docker stack deploy use compose file 无法指定ip:port

docker stack deploy use compose file can not specify ip:port

version: "3"

services:
  dhsearch:
    image: dhsearch
    ports:
      - "127.0.0.1:8001:80"
    deploy:
      replicas: 1

这是我的 docker-compose.yml,我用它来 docker stack deploy

docker stack deploy -c docker-compose.yml dhsearch

但 ip 无效,下面是 docker stack services dhsearch 结果

ID                  NAME                MODE                REPLICAS            IMAGE               PORTS
uowjwv0uoo1g        dhsearch_dhsearch   replicated          1/1                 dhsearch            *:8001->80/tcp

端口是 *:8001->80/tcp 而不是 127.0.0.1:8001->80/tcp

我要 127.0.0.1

您正在使用为堆栈创建的默认网络,这是一个覆盖网络。映射的 ip 部分被丢弃的原因是覆盖网络不支持 ip 部分。有关支持的映射,请参阅 this 页面。

有一份错误报告描述了您遇到的完全相同的问题: https://github.com/moby/moby/issues/32299

很遗憾,该问题尚未解决。