我尝试用docker运行一个node.js容器。 不幸的是,容器总是停下来,我无法获取任何日志来了解原因。当我重新启动容器时,它立即停止并且无法通过终端连接到它。
关于我的docker-compose.yml:
version: '2'
services:
node:
build: .
container_name: node.cs
restart: unless-stopped
ports:
- 3030:3000
volumes:
# app
- ./app:/app
关于我的Dockerfile:
FROM node:10.9.0-alpine
# Create app directory
RUN mkdir /app
WORKDIR /app
# Set environment to "development" by default
ENV NODE_ENV development
# make port available outside of the image
EXPOSE 3000
当我怀疑权限冲突时,这是我的本地工作文件夹内容:
drwxrwxr-x 2 myuser myuser 4096 août 30 00:07 app
-rwxr-xr-x 1 myuser myuser 791 août 30 06:41 docker-compose.yml
-rw-rw-r-- 1 myuser myuser 412 août 30 06:40 Dockerfile
-rw-rw-r-- 1 myuser myuser 98 août 28 22:43 .dockerignore
欢迎您帮助我理解我的代码有什么问题。 在此先感谢您。 jB
答案 0 :(得分:0)
Dockerfile
FROM node:10.9.0-alpine
WORKDIR /app
ADD . /app
RUN npm install
RUN npm install -g nodemon
# Set environment to "development" by default
ENV NODE_ENV=development
# Create app directory
# make port available outside of the image
CMD ["nodemon", "-L"]
EXPOSE 3000
docker-compose.yml
version: '3'
services:
application:
build: .
container_name: whatever_name_you_choice
restart: always
ports:
- "3000:3000"
volumes:
- .:/app