很多时候,我看到在 Docker Networking in Compose 中的 Docker Compose 文件中用冒号描述了两次端口。页:
version: "3"
services:
web:
build: .
ports:
- "8000:8000"
db:
image: postgres
networks:
default:
# Use a custom driver
driver: custom-driver-1
我经常想知道为什么
"8000:8000"
而不仅仅是"8000"
然后我看到了这个例子,它有两个不同的端口:
version: "3"
services:
web:
build: .
ports:
- "8000:8000"
db:
image: postgres
ports:
- "8001:5432"
有人可以解释这个端口表示是什么意思吗?
最佳答案
第一个端口是主机的端口,第二个是远程端口(即:在容器中)。该表达式将远程端口绑定(bind)到本地端口。
在示例中,您将容器的 8080 端口映射到主机的 8080 端口,但使用不同的端口是完全正常的(例如:48080:8080)
关于networking - 为什么需要指定两次端口,用冒号分隔?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44206827/