首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Docker撰写不更新内容

Docker撰写不更新内容
EN

Stack Overflow用户
提问于 2017-04-27 03:50:21
回答 1查看 3.4K关注 0票数 1

我有一些使用docker compose运行的容器,但我就是找不到一种方法来正确地更新我的容器,而不必删除它并重新创建它。我有一个Python应用程序,我可以成功地部署代码更改并应用这些更改,但如果我添加像css、js或图像这样的文件,这些文件就不会到达容器。

我已经尝试过这个命令,尽管在控制台中它会像预期的那样记录消息(不使用缓存重新构建它),但我没有成功:

代码语言:javascript
复制
docker-compose build --no-cache web && docker-compose up -d

对我来说唯一有效的命令是像这样删除它:

代码语言:javascript
复制
docker stop $(docker ps -a -q) && docker rm $(docker ps -a -q) && docker rmi $(docker images -a -q)

然后构建和部署:

代码语言:javascript
复制
docker-compose build && docker-compose up -d

这是我的docker-compose.yml:

代码语言:javascript
复制
web:
  restart: always
  build: ./web
  expose:
    - "8000"
  links:
    - postgres:postgres
    - redis
  volumes:
    - /usr/src/app/donare/static
  env_file: .env
  command: /usr/local/bin/gunicorn -w 2 -b :8000 --limit-request-line 16384 donare.app:app

nginx:
  restart: always
  build: ./nginx/
  ports:
    - "80:80"
  volumes:
    - /www/static
  volumes_from:
    - web
  links:
    - web:web

data:
  restart: always
  image: postgres:latest
  volumes:
    - /var/lib/postgresql
  command: "true"

postgres:
  restart: always
  build: .
  dockerfile: dockerfile-postgres
  volumes_from:
    - data
  ports:
    - "5432:5432"

redis:
  image: redis

celery:
  build: ./web
  command: celery worker --app=donare.tasks.tasks
  volumes:
    - .:/code
  links:
    - postgres
    - redis
EN

回答 1

Stack Overflow用户

发布于 2017-04-27 04:46:35

Docker编写文件显示web容器中有一个已命名的卷。在你的/usr/src/app/donare/static主机上,你的css、js和图片应该来自/usr/src/app/donare/static吗?如果是这样的话,也许您打算将/usr/src/app/donare/static挂载到容器中,而不是创建一个具有该名称的卷?或者,如果css、js和图像内置于您的映像中,那么您可能应该删除该命名卷。

假设您的css、js和图像位于容器中的路径/usr/src/app/donare/static,那么发生的情况是,因为您在那里有一个已命名的卷,所以当您第一次运行web服务时,将使用该路径上的内容创建并初始化一个卷。每次执行buildup时,相同的初始卷与旧文件一起挂载在path中。当您执行stoprm操作时,卷也会被隐式删除,从而导致使用新文件重新创建和初始化该卷。

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

https://stackoverflow.com/questions/43643338

复制
相关文章

相似问题

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