介绍
最近,我注意到,如果我可以使用Docker完成开发环境,则可以保持本地清洁,因此我倾向于使用Docker。
因此,我使用docker-compose启动了Next.js主题,因此我将其留作备忘录
环境
1 2 3 | macOS High Sierra v10.13.6 Docker version 19.03.8 docker-compose version 1.25.5 |
执行
我想在docker
上完成所有操作
准备
创建一个新的项目目录,并将以下两个文件放置在其下。
Dockerfile和docker-compose.yml。
根据项目名称在docker-compose.yml中的命令中更改目录移动命令。这次,我们说
Docker文件
1 2 | FROM node:14.15.3-alpine WORKDIR /usr/src/app |
docker-compose.yml
1 2 3 4 5 6 7 8 9 10 11 | version: '3' services: node: build: context: . dockerfile: Dockerfile volumes: - ./:/usr/src/app command: sh -c "cd sample-app && npm run dev" ports: - "3000:3000" |
当前状态
1 2 | $ ls Dockerfile docker-compose.yml |
安装create-next-app命令
安装create-next-app命令。
1 | $ docker-compose run --rm node npm install create-next-app |
执行create-next-app命令
这将创建下一个应用程序。
与create-react-app不同,create-next-app似乎无法指定安装目录,因此请确保该应用程序名称与docker-compose.yml中的命令指定的目录名称相同。
(如果可以指定安装目录,请告诉我。)
1 | $ docker-compose run --rm node npx create-next-app sample-app |
docker-compose up运行
一旦成功安装了下一个应用程序,就应该能够启动该应用程序。
如果出现
1 | $ docker-compose up |
在最后
这次,我使用docker-compose构建了next.js的开发环境。
我认为docker-compose非常方便,因为它可以与API容器链接。
我想知道create-next-app命令是否还可以指定目录。