【发布时间】:2019-07-30 17:11:24
【问题描述】:
为了测试我们的托管构建,我正在尝试建立一个与主机和外部世界隔离的 docker 网络。
我有以下docker-compose.yml(灵感来自this forum post):
version: '3'
services:
redis:
image: "redis:2.8.23"
networks:
- isolated
# ... more services (TODO)
networks:
isolated:
driver: overlay
internal: true
当我运行docker-compose up -d;它创建了网络,但随后无法创建容器,报告以下内容:
错误:此节点不是集群管理器。使用“docker swarm init”或“docker swarm join”将此节点连接到swarm,然后重试。
但我没有使用 docker swarm,也不想使用。
如果我从文件中删除 services: 节,它会启动网络而不会出现错误。它警告网络未使用(显然)。
如果我删除 services/redis/networks 节,它会正确地调出容器。
我做错了什么?
我找到了this answer,它使用driver: bridge 作为网络,但仍然允许访问主机。
- Docker 版本 18.09.3,构建 774a1f4
- docker-compose 版本 1.21.2,构建 a133471
【问题讨论】:
标签: docker docker-compose