Tag: 分享

在Docker中的多个容器中共享相同的资源

我需要设置一个容器卷使用多个容器。 例如: Container 1(web app1): volume path -v /var/www/html/ Container 2 (web app2): volume path -v /var/www/html/ Container 3(Commaon Files): volume path -v /var/www/html/ 我需要设置Container-3 Common文件使用其他两个容器。 我如何实现这一点。

与来自主机的容器共享目录或卷

我有一个目录(也许以后的卷),我想与我所有的互动容器分享。 我知道,本地Docker卷存储在/var/lib/docker/volumes而docker run -v似乎是最简单的方法,但我认为Data Volume Container是一种更加标准化的方式。 我不知道,如何从一个目录或现有的另一个卷创build这个卷容器。 也许是错误的方法?

Docker Swarm – 跨主机部署共享代码库

我有一个关于将应用程序部署到基于Docker群的生产的最佳实践的问题。 为了简化与这个问题有关的讨论/问题让我们考虑下面的情况: 我们的群体包含: 6台服务器(不同的主机) 在每台服务器上,我们将有一个服务 每个服务将只有一个任务/副本泊坞窗运行 Memcached1和Memcached2使用来自docker中心的公共图像 “回收数据1”和“回收数据2”使用私人存储库中的定制图像 “客户端1”和“客户端2”使用来自私人存储库的定制图像 最后,对于我们的示例应用程序,我们有6个不同的服务器上运行的docker。 2个docker是memcached,其中4个是与memcached进行通信的客户端。 “客户端1”和“客户端2”将根据某种规则将数据插入到memcached中。 “回收数据1”和“回收数据2”将根据某种规则更新或删除memcached中的数据。 就那么简单。 我们与memcached进行通信的应用程序是自定义的,它们是由我们编写的。 这些应用程序的代码驻留在github(或任何其他存储库)上。 将此应用程序部署到生产中的最佳方式是什么? 构build包含复制代码的图像,您可以使用这些代码将部署到群集中 构build将使用代码驻留在图像外部的音量的图像。 考虑到我第一次将swarm部署到生产环境中,我可以看到许多与第一种方法相关的问题。将代码合并到映像中似乎对我来说是不合逻辑的,考虑到在99%的时间,将要发生的更新将是基于代码的。 这将需要每次更新在特定泊坞窗上运行的代码(无论该更改是多么小)的时候都需要构build映像。 方式2对我来说似乎更合乎逻辑。 但在这个具体的时刻,我不确定这是可能的吗? 所以这里有很多问题: 如果我们要托pipe多个在后台运行相同代码的docker,最好的方法是什么? 是否有可能在docker群,有一个中央主机,服务器(经理,在任何地方),我们可以克隆我们的仓库,并共享这些仓库作为整个docker群的卷? (在我们的示例中,所有4个客户服务都将在我们拥有代码的地方安装音量) 如果这是可能的,docker-compose.yml的实现是什么?