# ベースイメージとして公式のNode.jsイメージを使用 FROM node:16 # 作業ディレクトリを作成 WORKDIR /usr/src/app # 必要な依存パッケージをインストール RUN apt-get update && apt-get install -y \ wget \ ca-certificates \ fontconfig \ libx11-dev \ libxkbcommon0 \ libxrender1 \ libfontconfig1 \ libglib2.0-0 \ curl \ gnupg2 \ lsb-release \ && rm -rf /var/lib/apt/lists/* # Googleの公開鍵を追加 RUN curl -sS https://dl.google.com/linux/linux_signing_key.pub | apt-key add - # Google Chromeのリポジトリを追加(stableバージョン用) RUN echo "deb [arch=amd64] https://dl.google.com/linux/chrome/deb/ stable main" | tee /etc/apt/sources.list.d/google-chrome.list # Chromeをインストール RUN apt-get update && apt-get install -y google-chrome-stable # package.json と package-lock.json をコンテナ内にコピー COPY package*.json ./ # 依存関係をインストール RUN npm install # Puppeteerをインストール RUN npm install puppeteer RUN npm install axios cheerio RUN npm install express cors # アプリケーションのソースコードをコンテナ内にコピー COPY . . # コンテナがリッスンするポートを指定 EXPOSE 3000 # アプリケーションを起動 CMD ["node", "app.js"]