File size: 1,016 Bytes
f6f5f1e
 
 
 
 
076f90e
f6f5f1e
 
 
 
 
 
 
 
 
6635dbb
 
 
62b1636
6635dbb
 
 
633ba08
 
87e8c40
c156d29
7544b32
1a68830
6c15fb2
f6f5f1e
6635dbb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# ベースイメージとしてPython 3.11.7を使用
FROM python:3.11.7-slim

# 作業ディレクトリを設定
WORKDIR /code

# requirements.txtをコンテナにコピー
COPY ./requirements.txt /code/requirements.txt

# 依存関係をインストール
RUN pip install --no-cache-dir --upgrade -r /code/requirements.txt

# git をインストール
RUN apt-get update && apt-get install -y git

# シークレット情報をクローンに使用
# SECRET_GIT_TOKEN は Docker のシークレットとして設定したもの
RUN --mount=type=secret,id=ghKey,mode=0444,required=true \
    git clone https://$(cat /run/secrets/ghKey)@github.com/OzoneAsai/flashcards.git

# ソースコード全体をコンテナにコピー
COPY . .
RUN chmod -R 777 ./flashcards

RUN cd ./flashcards
WORKDIR /code/flashcards
RUN --mount=type=secret,id=GEMINI_API_KEY,mode=0444,required=true \
    echo "GEMINI_API_KEY=$(cat /run/secrets/GEMINI_API_KEY)" >> .env

# アプリケーションの起動
CMD ["python3", "app.py"]