docker -- 网络访问

分类

  • 外部访问容器
  • 或容器访问外部(一般是容器间相互访问)

外部访问容器

由于docker容器的封闭性,外部要访问容器内资源,必须借助host主机的端口映射,相关命令如下:

  • 系统随机分配主机端口给容器,完成映射
1
docker run -P <image ID>
  • -p 则可以指定要映射的端口,并且,在一个指定端口上只可以绑定一个容器。支持的格式有
1
docker run -p ip:hostPort:containerPort | ip::containerPort | hostPort:containerPort

第一种格式是外部指定ip固定端口,第二种是外部指定ip随机端口,第三种是外部所有ip指定端口

查看端口映射

  • 使用 docker port 来查看当前映射的端口配置,也可以查看到绑定的地址
  • 使用 docker container ls
  • 通过 docker logs 命令来查看应用的信息

容器互联

新建网络

  • 先创建一个新的 Docker 网络。
1
docker network create -d bridge my-net

-d 参数指定 Docker 网络类型,有 bridge、 overlay

  • 运行一个容器并加入到 my-net 网络,使用--network
1
docker run -it --rm --name busybox1 --network my-net busybox sh

以这样的方式可以加入多个容器