FROM python:3.9-slim | |
# 作業ディレクトリを設定 | |
WORKDIR /app | |
# 必要なツールをインストール | |
RUN apt-get update && apt-get install -y \ | |
git \ | |
npm \ | |
&& apt-get clean && rm -rf /var/lib/apt/lists/* | |
# pnpmをグローバルにインストール | |
RUN npm install -g pnpm | |
# アプリケーションのセットアップ | |
RUN git clone https://github.com/titaniumnetwork-dev/Alu.git --recursive /app/nebula_repo | |
WORKDIR /app/nebula_repo | |
RUN npm install && \ | |
cp .env.defaults .env && \ | |
# .env.defaults内のPORT設定を置き換え | |
sed -i 's/^PORT=3000$/PORT=7860/' .env && \ | |
npm run build | |
# 必要なPythonパッケージをインストール | |
RUN pip install flask | |
# ポート7860を公開 | |
EXPOSE 7860 | |
# Flaskアプリケーションファイルをコピー | |
COPY app.py /app/ | |
# 作業ディレクトリを戻す | |
WORKDIR /app | |
# コンテナ実行時にapp.pyを実行 | |
CMD ["python", "app.py"] | |