我想配置一个网关来连接两个容器。下面是一个示例compose文件,该文件创建了三个容器-一个test_client,一个test_server和一个代理。代理服务器应充当从test_client到test_server的所有通信的默认网关。我使用的是撰写文件格式v2,因为v3不支持IPAM网关配置。
version: "2"
services:
proxy:
build: .
cap_add:
- NET_ADMIN
expose:
- 8080
- 80
- 443
networks:
client_network:
ipv4_address: '192.168.0.5'
server_network: null
stdin_open: true
tty: true
test_server:
build: ./test_server
expose:
- 8000
networks:
- server_network
test_client:
build: ./test_client
networks:
- client_network
stdin_open: true
tty: true
networks:
client_network:
driver: bridge
ipam:
driver: default
config:
- subnet: "192.168.0.0/24"
gateway: "192.168.0.5"
server_network:
driver: bridge
运行docker-compose up
时,出现以下错误:
ERROR: for 28e458cec9ac_network_proxy_1 b'user specified IP address is supported only when connecting to networks with user configured subnets'
我已阅读以下资源:
SO: docker container as gateway between two docker bridges Docker forums
但是他们似乎并没有帮助我回答如何获得此设置。我并没有致力于任何特定的网络结构-我唯一要做的就是配置一个容器充当其他两个容器之间的网络级网关的事情。