Fal*_*CAM 3 docker docker-compose
为了更新一些图像,我使用了“docker-compose pull”。然后我构建:'docker-compose build'。
我只想更新应用程序容器,所以我删除了它并重新启动:“docker-compose rm app”和“docker-compose up -d app”。
但是发生了一些不希望的事情。数据容器也被重新创建。旧数据丢失。
用于数据容器的 Dockerfile:
FROM gitlab/gitlab-ce:latest
VOLUME ["/etc/gitlab", "/var/log/gitlab", "/var/opt/gitlab"]
ENTRYPOINT ["hostname"]
Run Code Online (Sandbox Code Playgroud)
docker-compose.yml:
version: '2'
services:
gitlab:
image: 'gitlab/gitlab-ce:latest'
domainname: example.com
hostname: gitlab
networks:
- devenv
restart: always
environment:
GITLAB_OMNIBUS_CONFIG: |
external_url 'http://gitlab.example.com'
gitlab_rails['gitlab_shell_ssh_port'] = 2224
ports:
- '80:80'
- '2224:22'
volumes_from:
- gitlabdata
gitlabdata:
build: gitlab-data
Run Code Online (Sandbox Code Playgroud)
下次我怎样才能避免这种情况?
该docker-compose up命令具有--no-recreate标志。如果容器已经存在,则此标志避免重新创建容器。
因此你可以运行
docker-compose up -d --no-recreate app
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1959 次 |
| 最近记录: |