【问题标题】:How to update replicated Docker service如何更新复制的 Docker 服务
【发布时间】:2022-01-18 17:56:30
【问题描述】:

我仍在学习 Docker,不幸的是,在阅读了数小时的文档并尝试了各种方法之后,我需要在这里寻求帮助。

我在 Digital Ocean 上有 3 个 Droplet - 开发、登台和生产。它们托管一个 Django 应用程序和一个数据库。

dev 和 staging 都有一个容器,它只是一个 Python 容器和一个 MySQL 容器。 我通过从 Bitbucket 存储库中提取更改来更新它们,使用 docker exec -ti CONTAINER /bin/bash 并重新启动 Python 容器。

生产 Droplet 具有复制服务和从 Digital Ocean 上的容器注册表中提取的图像。 我从 Bitbucket 上的存储库中提取更改,但由于我不能简单地重新启动容器,因此更改不会反映在网站上。

我试过docker stack deploy -c docker-compose.yml SERVICE --with-registry-authdocker service update --image IMAGE SERVICE,但没有效果。

任何帮助将不胜感激。 谢谢

【问题讨论】:

    标签: django docker


    【解决方案1】:

    我通过 Bitbucket 创建一个新图像解决了这个问题。然后docker stack deploy -c docker-compose.yml SERVICE --with-registry-auth从Digital Ocean的仓库中拉取了新的图片,并在网站上反映了变化。

    【讨论】:

      【解决方案2】:

      正如您之前提到的,您可以使用 docker CLI 执行此操作,但如果您是 docker 新手,您可能想尝试一下https://www.portainer.io/,这将帮助您更轻松地执行此类任务。 portainer 还为 docker 添加了另一个 API 杠杆,这也很好。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-06-29
        • 1970-01-01
        • 1970-01-01
        • 2021-10-19
        • 1970-01-01
        • 2023-03-26
        相关资源
        最近更新 更多