建立 docker compose
docker-compose.yml
version: '3.8'
services:
postgres:
image: postgres:15
container_name: some-postgres
restart: always
ports:
- "5432:5432" # 對外開放 port
environment:
POSTGRES_USER: postgres
POSTGRES_PASSWORD: mysecretpassword
web:
container_name: nextjs-dev
build:
context: .
dockerfile: dockerfile
ports:
- "3000:3000"
volumes:
- .:/app
- /app/node_modules
environment:
- NODE_ENV=development
- CHOKIDAR_USEPOLLING=true
- POSTGRES_POSTGRES_URL=postgresql://postgres:mysecretpassword@some-postgres:5432/postgres
command: npm run dev
depends_on:
- postgres
執行
docker-compose up
透過這個方式可以將 nextjs 專案變成在 docker中開啟 並連接 postgres 添加 depends_on 確保 postgres 已開啟
剩下的問題是 在本地修改時不會 hot reload 雖然設定了 volumes 但似乎沒有奏效
Last updated