09-17 10:08 docker 学习 Docker 端口映射与容器互联 #### 端口映射 在启动容器的时候,如果不指定对应参数,在容器外部都是无法通过网络来访问容器的应用和服务的。可以通过`-p`或者`-P`参数指定端口映射。 使用`-P`(大写),Docker 会随机映射一个49000~49900的端口到内部容器开放的网络端口。如`docker run -P -d nginx:latest`命令将使用镜像nginx:latest以后台模式启动一个容器,并将容器的80端口映射到主机随机端口。 使用`-p`(小写),则可以指定要映射的端口。并且,在一个指定端口上只可以绑定一个容器。仅支持的格式有 `IP:HostPort:ContainerPort`(映射到指定地址的指定端口),`IP:ContainerPort`(映射到指定地址的任意端口), `HostProt:ContainerPort`(映射所有接口地址)。 查看映射端口配置可通过`docker port [container]`来查看当前映射的端口配置或绑定的地址。 #### 容器互联 使用 `--link`参数可以让容器之间安全的进行交互。如:`docker run -d -P --name web --link db:db_alias [image]`将创建一个新的web 容器,并将它链接到db容器。 其`db:db_alias`中的`db`指要连接的容器名称,`db_alias`指别名。