LoginSignup
1
1

More than 1 year has passed since last update.

Docker で Next.js を起動する時にハマったこと

Posted at

Docker で Next.js を起動する

docker-compose.yml のみで Next.js を起動しようと試みたところ、どうやら npm のバージョンが対応していないようで起動するのが面倒だったので、docker compose up -dのみでサーバーを起動させるまでを行いたいと思います。

原因

Docker の npm のバージョンはデフォルトで 8.1.2 となっていました。

npm run devをすると以下のようになります

> dev
> next dev

sh: 1: next: not found

これをnpm upgradeで 8.3.0 にすると起動しました。

ディレクトリ構成

app
 ├ Dockerfile
 |
 ├ docker-compose.yml
 |
 └ nextプロジェクト

Dockerfile

Dockerfile
FROM node:17.3.1

WORKDIR /usr/src/app/next

COPY /react/package*.json ./

RUN npm install

docker-compose.yml

docker-compose.yml
version: "3"
services:
  next:
    build: .
    ports:
      - "3000:3000"
    container_name: "next"
    volumes:
      - ./react:/usr/src/app/next
    command: "npm run dev"

以上のようにして docker-compose.yml のあるディレクトリに移動し、docker compose up -dを行うと、localhost:3000 で作成した Next.js プロジェクトにアクセス可能になりました。

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1