| 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"] | |