如何通过IP地址而不是端口访问容器?我可以定义任何类型的网络或桥梁吗?
我在Windows 10上使用带有WSL2的标准Desktop。这需要将容器公开为机器,而不是端口。
我试过这个,但没有用:)
这个组合非常复杂,但是您可以使用纯Ubuntu映像来测试它--不管是什么图像。
networks:
cassandra:
volumes:
cassandra-data-1:
driver: local
cassandra-log-1:
driver: local
cassandra-data-2:
driver: local
cassandra-log-2:
driver: local
cassandra-data-3:
driver: local
cassandra-log-3:
driver: local
cassandra-data-4:
driver: local
cassandra-log-4:
driver: local
services:
cassandra-1:
image: cassandra:4.0.5
container_name: cassandra-1
hostname: dc-cassandra-1
mem_limit: 2g
networks:
- cassandra
environment: &cassandra_environment
MAX_HEAP_SIZE: 1G
HEAP_NEWSIZE: 100M
CASSANDRA_SEEDS: dc-cassandra-1,dc-cassandra-2,dc-cassandra-3,dc-cassandra-4
CASSANDRA_CLUSTER_NAME: dptr-v2
CASSANDRA_DC: dptr-v2-dc0
CASSANDRA_RACK: dptr-v2-r0
volumes:
- cassandra-data-1:/var/lib/cassandra
- cassandra-log-1:/var/log/cassandra
cassandra-2:
image: cassandra:4.0.5
container_name: cassandra-2
hostname: dc-cassandra-2
mem_limit: 2g
networks:
- cassandra
environment: *cassandra_environment
volumes:
- cassandra-data-2:/var/lib/cassandra
- cassandra-log-2:/var/log/cassandra
cassandra-3:
image: cassandra:4.0.5
container_name: cassandra-3
hostname: dc-cassandra-3
mem_limit: 2g
networks:
- cassandra
environment: *cassandra_environment
volumes:
- cassandra-data-3:/var/lib/cassandra
- cassandra-log-3:/var/log/cassandra
cassandra-4:
image: cassandra:4.0.5
container_name: cassandra-4
hostname: dc-cassandra-4
mem_limit: 2g
networks:
- cassandra
environment: *cassandra_environment
volumes:
- cassandra-data-4:/var/lib/cassandra
- cassandra-log-4:/var/log/cassandra发布于 2022-07-28 00:32:37
您不能通过IP地址从Windows主机访问Linux容器。(...or位于MacOS主机上,如果使用基于VM的Docker解决方案,或者客户端与容器不在同一主机上,或.)相反,可以通过它们发布的ports:访问容器。没有必要查找容器的码头内部IP地址。
码头桌面文件指出,在“所有平台的已知限制”下:
每个容器的 IP寻址是不可能的,:无法从主机到达坞桥网络。但是,如果您是Windows用户,则它可以使用Windows容器。
https://stackoverflow.com/questions/73143540
复制相似问题