首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Docker / Angular4 / Nginx

Docker / Angular4 / Nginx
EN

Stack Overflow用户
提问于 2017-07-17 01:06:44
回答 1查看 221关注 0票数 1

我是Docker的初学者,我创建了这个Dockerfile

代码语言:javascript
复制
FROM nginx:1.13-alpine

ENV APP_PATH /app
ENV PATH $APP_PATH/node_modules/@angular/cli/bin/:$PATH

RUN apk add --update --no-cache nodejs && mkdir $APP_PATH && rm -rf /etc/nginx/conf.d/*
WORKDIR $APP_PATH

COPY . .

COPY nginx/default.conf /etc/nginx/conf.d/

RUN npm install \
  && ng build --aot --prod \
  && rm -rf /usr/share/nginx/html/* \
  && mv ./dist/* /usr/share/nginx/html/ \
  && npm cache clean \
  && apk del nodejs libstdc++ libgcc libuv http-parser ca-certificates \
  && rm -rf ./*

CMD ["nginx", "-g", "daemon off;"]

和Nginx配置

代码语言:javascript
复制
server {

  listen 80;

  sendfile on;

  default_type application/octet-stream;


  gzip on;
  gzip_http_version 1.1;
  gzip_disable      "MSIE [1-6]\.";
  gzip_min_length   256;
  gzip_vary         on;
  gzip_proxied      expired no-cache no-store private auth;
  gzip_types        text/plain text/css application/json application/javascript application/x-javascript text/xml application/xml application/xml+rss text/javascript;
  gzip_comp_level   9;


  root /usr/share/nginx/html;


  location / {
    try_files $uri $uri/ /index.html =404;
  }

}

构建镜像docker build --rm -t appName -f Dockerfile .并运行容器docker run -it -p 8080:80 appName

一切都很好。但我有一个问题。我不能交互地更改我的代码。我提交了我正在更改的docker commit ...。我重启了我的容器几次,但是什么也没有发生。如果有任何建议,我将不胜感激。

EN

回答 1

Stack Overflow用户

发布于 2017-07-17 03:58:15

Docker允许您在构建镜像时复制文件,也可以在运行容器时挂载本地目录/文件。查看您的Dockerfile,您看起来像是在构建时将代码复制到镜像中,这就是为什么构建镜像时您的文件所处的状态是您运行容器时将获得的状态。

我假设您使用的是Linux/Mac,下面是一个在docker容器中挂载项目目录的示例:

代码语言:javascript
复制
$ docker run -v "$PWD/dist:/usr/share/nginx/html" -it -p 8080:80 appName

现在,对主机操作系统上的文件所做的任何更改都将反映在docker容器中。

注意:您的docker文件很好,但您可以通过阅读internet上的文章来进行改进。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45131257

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档