具有docker-compose的Node.js容器无法运行

时间:2018-08-30 05:47:26

标签: node.js docker docker-compose

我尝试用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

1 个答案:

答案 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