Docker 学习之五:网络管理

容器中可以运行一些网络应用,要让外部也可以访问这些应用,可以通过 -P 或 -p 参数来指定端口映射。

当使用 -P 标记时,Docker 会随机映射一个 49000~49900 的端口到内部容器开放的网络端口。

映射时,有下面几种方式

映射所有接口地址

1
docker run -d -p 5000:5000 training/webapp python app.py

映射到指定地址的指定端口

1
docker run -d -p 127.0.0.1:5000:5000 training/webapp python app.py

映射到指定地址的任意端口

1
docker run -d -p 127.0.0.1::5000 training/webapp python app.py

查看映射端口配置

1
docker port nostalgic_morse 5000

容器互联

1
2
docker network create -d bridge my-net
-d 参数指定 Docker 网络类型,有 bridge overlay。其中 overlay 网络类型用于 Swarm mode

运行一个容器并连接到新建的 my-net 网络

1
docker run -it --rm --name busybox1 --network my-net busybox sh

如果你有多个容器之间需要互相连接,推荐使用 Docker Compose。