前言

  1. 容器中執行網路應用程式,提供給外部存取,例如:httpd 網頁服務。
  2. 要達到此目標,可以讓 docker host 主機的連接埠映射到容器的網路服務埠。
  3. docker run 有 -P (隨機) 及 -p (指定) 兩種方式決定映射的連接埠。
    [root@dyw219 ~]# docker run --help | grep -i '\-p,'
      -P, --publish-all=false         Publish all exposed ports to random ports
      -p, --publish=[]                Publish a container's port(s) to the host
    
    1. -P, --publish-all=false:關閉指定埠號,Docker 隨機映射一個連接埠到容器開放的網路連接埠,隨機連接埠範圍如下:
      [root@dyw219 ~]# cat /proc/sys/net/ipv4/ip_local_port_range
      32768	60999
      
    2. -p, --publish=[]:指定一個埠號映射到容器開放的網路連接埠,支援的格式有以下幾種:
      ip:hostPort:containerPort
      ip::containerPort
      hostPort:containerPort
      
  4. 查詢 Docker 隨機連接埠範圍,並導向到 /root/dtest.prange。