Docker网络操作(外部访问容器+容器互联)

Docker 允许通过外部访问容器或容器互联的方式来提供网络服务。

一、外部访问容器

外部访问容器需要设置端口映射,通过-P或-p参数设置端口映射。

  • 映射所有地址的一个随机端口到内部容器端口:-P
  • 映射所有地址的一个指定端口到内部容器端口:-p hostPort:containerPort
  • 映射指定地址的一个指定端口到内部容器端口:-p ip:hostPort:containerPort
  • 映射指定地址的随机端口到内部容器端口:-p ip::containerPort
  • 查看映射端口配置:docker port
  • 查看容器的所有映射:docker container ls;docker container inspect 下NetworkSetting中Ports属性
  • 查看访问记录:docker logs

举例:

docker run -P(随机映射到32679端口)

docker port :

docker container inspect :

Docker网络操作(外部访问容器+容器互联)_第1张图片

docker logs:

Docker网络操作(外部访问容器+容器互联)_第2张图片

docker run -p hostport:containerport

Docker网络操作(外部访问容器+容器互联)_第3张图片

docker run -p ip::containerport

Docker网络操作(外部访问容器+容器互联)_第4张图片

二、容器互联

通常将容器加入自定义的 Docker 网络来连接多个容器。(当然也可以使用--link参数,请自行了解)

2.1建立网络

docker network create -d bridge

-d指定网络类型,常用bridge,另一种swarm暂时不用了解。

2.2连接网络

建立两个容器,设置在同一个网络:

安装一下ping工具,然后ping一下:

然后就ping通了,说明网络建立成功。

(多容器互联推荐使用docker-compose工具。)

你可能感兴趣的:(Docker学习,docker,网络,容器)