【发布时间】:2021-03-25 06:38:13
【问题描述】:
我正在我的 ec2 实例上创建一个 docker 容器。
当我运行docker-compose up --build时,容器test-web没有创建成功。
我尝试运行 docker logs test-web 并查看日志,然后我看到以下错误
sh: nodemon: not found
我尝试在 package.json 上添加 nodemon 依赖并再次运行 docker-compose up --build 但仍然无法正常工作。
Dockerfile
FROM node:lts-alpine
WORKDIR /server
COPY package*.json ./
RUN npm install
COPY . .
EXPOSE 3030
CMD ["npm", "run", "dev"]
docker-compose.yml
version: '2.1'
services:
test-db:
image: mysql:5.7
environment:
- MYSQL_ALLOW_EMPTY_PASSWORD=true
- MYSQL_USER=admin
- MYSQL_PASSWORD=12345
- MYSQL_DATABASE=test
volumes:
- ./db-data:/var/lib/mysql
ports:
- 3306:3306
test-web:
environment:
- NODE_ENV=local
#- DEBUG=*
- PORT=3030
build: .
command: >
./wait-for-db-redis.sh test-db npm run dev
volumes:
- ./:/server
ports:
- "3030:3030"
depends_on:
- test-db
package.json
"scripts": {
"dev": "nodemon --legacy-watch src/",
},
【问题讨论】:
标签: node.js docker docker-compose