DockerでNext.jsの環境を構築してみる(Mac/docker-composeなし)
-1.png)
当記事は「Next.jsをECS上で動かしてみる」の第1回「DockerでNext.jsアプリを作成してみる」になります。
- DockerでNext.jsアプリを作成してみる
- ECRにリポジトリを作成してみる
- ECRにコンテナのイメージをプッシュしてみる
- VPCを作成してみる(ECSを動かすため用)
- セキュリティグループを作成してみる(ECSを動かすため用)
- ECSでNext.jsのアプリを動かしてみる
- セキュリティグループを作成してみる(ALBを動かすため用)
- ALBを作成してターゲットグループにECSを指定してみる
- CloudFrontでALB(ECS)を配信してみる
- XServerで取得した独自ドメインをCloudFrontに設定してみる
- WAF/ACLを使ってアクセス元をIPアドレスで制限してみる
- CloudFrontで独自ドメイン以外へのアクセスを制限してみる
開発環境
- OS:Mac
- Docker Desktopインストール済み
- VSCodeインストール済み
Dockerファイルを作成
touch Dockerfile作成されたDockerfileを下記の内容で編集。
FROM node:20-alpine
WORKDIR /app
COPY nextjs-docker/package*.json ./
RUN npm install
COPY nextjs-docker .
RUN npm run build
EXPOSE 3000
CMD ["npm", "start"]
アプリを作成
npx create-next-app@latest nextjs-docker途中で設定を聞かれるので、一番上のrecommended(推奨)を選択。

成功するとNext.jsのアプリ用のフォルダ・ファイルが作成されます。

アプリを起動
まずはディレクトリを移動。
cd nextjs-docker
アプリを起動。
npm run dev
環境が構築できたか確認
下記のURLを開いて、Next.jsのウェルカムページが表示されていたらOK。
http://localhost:3000/

以上になります。
お読み頂き、ありがとうございました。


