问题标签 [docker-compose]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1292 浏览

ruby - Docker:每当我需要添加软件时,我是否需要从头开始重建容器?

所以我正在试验 Docker,并设置了一个与 postgres 对话的 Rails 应用程序。一切正常,我可以访问应用程序、迁移数据库等。

在制作了几个模型和一个控制器后,我决定为项目使用 Slim 模板并将其添加到我的 Gemfile

我本来希望能够通过在其上运行 bundle install 来更新对 Web 容器的依赖:

起初似乎可行,它安装了 gem 及其依赖项。然而,这些只是构建容器的一次性副本。下次我运行 docker-compose up 时,IT 不会留下来。

永久获得 gem 的唯一方法是再次从头开始构建 web,这可能需要 3-4 分钟才能再次从头安装所有 gem,这主要是由于 nokigiri。

这是“更新”基本映像的唯一方法吗?我希望我只需要在修改 Dockerfile 本身时进行重建,而从头开始重建是有意义的。

0 投票
1 回答
470 浏览

image - Docker Compose:即时从集线器初始化/自定义图像并运行

我是 docker compose 的新手,在使用 compose 开始之前,我不知道如何从私有/公共 docker hub 自定义我的图像。

最终目的是在集线器上拥有标准图像,这些图像由 compose 调用,并使用本地存储的一个配置文件(包含密码、IP、私人信息)即时自定义。

更详细地说,我得到了一个 DB postgres,以及一个链接到它的后端(django 应用程序)。

  • 提取图像(Postgres:lastest)后,数据库需要很少的自定义(创建数据库,给予权限)。
  • 后端需要一个配置文件添加到该容器内的目录中,然后应用程序才能运行。

如果我一步一步地做,一切都很好,获取图像,将每个图像作为容器运行并添加自定义。最后最后一次使用链接运行容器数据库和后端。

使用 compose,因为整个事情都运行一次,我似乎无法在容器运行并链接到数据库之前正确自定义后端(复制一个文件)。我可以在 docker compose up 之后运行自定义,但似乎为时已晚。

任何人都可以给我一个提示如何使它工作?或者这个过程的最佳方法是什么。

感谢您的宝贵帮助。晚上好!

问候,格雷格。

0 投票
2 回答
923 浏览

django - docker-compose 用于纯数据容器和 Web 服务器 postgresql

我正在使用 docker-compose.yml 文件为我的 django nginx postgresql 和一个纯数据容器构建 3 个 docker 容器。

这是我的 docker-compose.yml

我担心如何备份和恢复存储在纯数据容器(myweb_data_1)中的 postgresql 数据。如果我更新代码,我使用“docker-compose build && docker-compose up”命令来重建 docker 映像并重新启动容器,但不确定这是否正确或最好的方法。

0 投票
2 回答
387 浏览

docker - 如何使用 docker-compose 在同一主机上的不同部署中连接 docker 容器?

我很难弄清楚如何互连属于在同一主机上运行的不同 docker-compose 项目的容器。

假设我在Deployment A中有一组容器:

所有这些容器都是从单独的配置文件中启动的deployment-a.yml。现在,我们还有一个不同的Deployment B,它有自己的 `deployment-b.yml:

是否可以通过和/或中的某些特定配置访问数据库(cl-db容器)?stockagents-appdeployment-b.ymldeployment-a.yml

注意:我知道如何使用纯docker命令和通过链接容器来做到这一点--link,但是有没有一种方法可以仅使用 docker-compose及其配置文件来实现相同的行为?

0 投票
1 回答
8283 浏览

docker - 链接和缩放如何在 docker compose 中协同工作?

以下是我对 docker compose 的理解:

  • 您可以“扩展”服务以一次在多个容器中运行它。
  • 如果将服务 A 链接到服务 B,则服务 A 可以访问运行服务 B 的容器。

我的理解是否正确,如果是,如果有多个容器运行该服务,链接在哪里连接?

0 投票
9 回答
33852 浏览

linux - docker-compose up 导致“客户端和服务器版本不同(客户端:1.14,服务器:1.12)”错误,但客户端和服务器版本相同

docker version印刷:

docker-compose --version印刷:

我安装了 docker withapt-get install docker.io和 docker-compose with

我使用 Ubuntu 14.04 x64。

0 投票
1 回答
413 浏览

ruby - boot2docker 无法访问外界

在 OSX 上,通过 boot2docker,我在 docker 容器中运行了一个 ruby​​ on rails 应用程序。

但是,它似乎无法访问第三方 API。

下面的代码在 docker 容器之外工作,但不在内部:

当从 docker 容器内部运行时,请求超时:

在这一点上,我认为问题可能出在 boot2docker 设置上,就像这样:

然后它超时。

我正在使用 OSX 10.10.3、boot2docker 1.50 和 docker-compose

0 投票
3 回答
6694 浏览

ubuntu - 如何将命令行选项发送到以“docker-compose up”开头的 dockerized 程序?

我正在尝试使用docker-compose up您可以使用的方式docker run [APP_CONTAINER_NAME] [APP_OPTIONS]

0 投票
2 回答
3511 浏览

docker - 如何从多个 Dockerfile 中的共享目录复制文件?

在我的应用程序中,我有 5 个 docker 容器,每个容器都从从 Dockerfile 构建的图像开始。以下是结构:

script.sh 被复制到应用程序 1,2&4 的 Dockerfile 中。问题是我必须在每个应用程序目录中放置相同的 script.sh。有没有办法使用包含单个 script.sh 的共享文件夹并从中复制?我正在使用 docker-compose 来构建和运行容器。

0 投票
1 回答
425 浏览

ruby - 如何在 Ubuntu 14 中通过 localhost:9292 绑定 docker 容器和 cuba 进程

我在 ubuntu 14.04 上,我有一个超级简单的古巴应用程序,它似乎缺少一些东西:

宝石文件:

配置.ru

码头工人-compose.yml

Dockerfile

我试图通过docker-compose up. 它构建图像并将终端中的 cuba 进程绑定到我。我可以看到服务器正在监听端口 9292。但我完全无法通过localhost:9292url 访问它。