【发布时间】:2018-07-01 23:05:49
【问题描述】:
我们创建了一个包含多个服务的 docker compose 文件。这些服务的图像是使用“构建”配置选项在运行时构建的。相应的 Dockerfile(s) 在各自的目录中给出。
示例 docker compose 文件...
version: '3'
services:
db2server:
build: ./db2server
ports:
- "50005:50000"
command: ["db2start"]
appruntime:
build: ./appruntime
depends_on:
- db2server
此 docker compose 文件适用于 docker-compose 命令。
- 映像是在运行时从
db2server和appruntime目录中存在的Dockerfile 构建的 - 这些映像部署在主机中
但是当我们尝试在 docker swarm 中部署它时,会抛出以下错误...
docker stack deploy -c /home/docker/docker-compose.yml app
Ignoring unsupported options: build
Creating network app_default
Creating service app_db2server
failed to create service app_db2server: Error response from daemon: rpc error: code = InvalidArgument desc = ContainerSpec: image reference must be provided
在 docker swarm 中的堆栈部署期间似乎忽略了“构建”配置选项。
我们如何在 docker swarm 的 docker compose 文件中部署这些服务(带有构建选项)。
【问题讨论】:
标签: docker docker-compose dockerfile docker-swarm