我已经编写了一个angular 7应用程序,并且想要将其部署在docker上。我已经在根文件夹中创建了一个Dockerfile。当我尝试运行docker时,它会自行被杀死。
这是我的Dockerfile
# base image
FROM node:10.16.3
# set working directory
WORKDIR /app
# add `/app/node_modules/.bin` to $PATH
ENV PATH /app/node_modules/.bin:$PATH
# install and cache app dependencies
COPY package.json /app/package.json
RUN npm install
RUN npm install -g @angular/cli@8.2.0
# add app
COPY . /app
# start app
CMD ng serve --host 0.0.0.0
我正在通过命令构建docker
docker build -t example:dev .
要运行我正在使用的Docker
docker run -v ${PWD}:/app -v /app/node_modules -p 4201:4200 --rm example:dev
这是我的输出:
我是Docker的新手。
答案 0 :(得分:1)
我觉得您的错误在于您定义的体积。您无需在docker run容器上定义任何卷。
基本上,您将应用程序中的所有组件复制到容器中,然后在其中启动容器。然后,就像您已经做的那样,指定应用程序应运行的端口,并将其在容器外部提供给主机系统。
TL; DR:删除docker run命令上的'-v'参数。
如果您是新手,可以查看此博客文章以获得指导medium