在Docker Compose文件中,我可以使用短格式语法轻松发布一系列端口:
ports:
- "3000-3010:3000-3010/udp"
但就我而言,我需要这些端口为" mode = host"绕过群覆盖网络。短格式语法无法表达,因此我需要使用长格式:
ports:
- published: "3000-3010"
target: "3000-3010"
protocol: udp
mode: host
但是,似乎Docker不喜欢使用长格式语法指定范围,因为我在部署堆栈时遇到了错误:
services.test.ports.0.target必须是整数
有没有办法做到这一点(通过将范围中的每个端口指定为长格式除暴力之外)?
答案 0 :(得分:7)
目前无法做到这一点。
根据我在官方docker slack通道上对此功能的讨论,使用长格式语法(这是现在唯一可用于在主机模式下发布端口的语法)公开端口范围是不可能的。
考虑到与此问题有关的open ticke t,我想在不久的将来它是可能的。