![](/img/trans.png)
[英]Custom nginx container exits immediately when part of docker-compose
[英]Upgrade docker container as part of docker-compose
我想在我的docker -compose文件中更新一個容器:例如從sharelatex 0.2到v0.3.10。 在不丟失其他容器及其數據的情況下該如何做? 如果更新失敗,是否還可以創建當前容器的備份並切換回該容器?
我當前的docker-compse文件:
version: '2'
services:
sharelatex:
restart: always
image: sharelatex/sharelatex:0.20
container_name: sharelatex
depends_on:
- mongo
- redis
privileged: true
ports:
- 80:80
links:
- mongo
- redis
volumes:
- ~/sharelatex_data:/var/lib/sharelatex
environment:
SHARELATEX_MONGO_URL: mongodb://mongo/sharelatex
SHARELATEX_REDIS_HOST: redis
SHARELATEX_APP_NAME: 'Our ShareLaTeX'
mongo:
restart: always
image: mongo
container_name: mongo
expose:
- 27017
volumes:
- ~/mongo_data:/data/db
redis:
restart: always
image: redis
container_name: redis
expose:
- 6379
volumes:
- ~/redis_data:/data
您應該始終將任何重要狀態(數據)存儲在卷中。 容器應始終視為一次性容器,因此在升級時,將重新使用卷,並且不會丟失任何數據或狀態。
默認情況下,只要它們的配置沒有更改, docker-compose up
就會嘗試重用任何現有容器。 如果僅更改一項服務,則其他服務容器不會停止。
在您的情況下,您好像已經在使用卷,因此只需更改版本並運行docker-compose up
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.