十、Docker容器端口映射
端口映射
从外部访问容器应用
启动容器,若不指定参数,则容器外部无法通过网络来访问容器内部网络应用与服务。
参数为-P(大写)时,Docker随机映射一个49000~49900端口到内部容器开放的网络端口。
<span style="box-sizing: border-box;color: rgb(171, 178, 191);padding-right: 0.1px"><span style="box-sizing: border-box;color: rgb(98, 151, 85) !important"># 启动容器并随机分配端口</span></span><br></br><span style="box-sizing: border-box;color: rgb(171, 178, 191);padding-right: 0.1px">docker run <span style="box-sizing: border-box;color: rgb(209, 154, 102) !important">-d</span> <span style="box-sizing: border-box;color: rgb(209, 154, 102) !important">-P</span> <span style="box-sizing: border-box;color: rgb(209, 154, 102) !important">--name</span> nginx01 nginx:1.17.4</span><br></br><span style="box-sizing: border-box;color: rgb(171, 178, 191);padding-right: 0.1px"><span style="box-sizing: border-box"></span></span><br></br><span style="box-sizing: border-box;color: rgb(171, 178, 191);padding-right: 0.1px"><span style="box-sizing: border-box;color: rgb(98, 151, 85) !important"># 查看</span></span><br></br><span style="box-sizing: border-box;color: rgb(171, 178, 191);padding-right: 0.1px">docker <span style="box-sizing: border-box;color: rgb(232, 191, 106) !important">ps</span> <span style="box-sizing: border-box;color: rgb(209, 154, 102) !important">-a</span></span>
映射所有接口地址
使用HostPort:ContainerPort格式本地的5000端口映射到容器的5000端口
<span style="box-sizing: border-box;color: rgb(171, 178, 191);padding-right: 0.1px"> <span style="box-sizing: border-box;color: rgb(98, 151, 85) !important"># 此映射出现无法访问的情况</span></span><br></br><span style="box-sizing: border-box;color: rgb(171, 178, 191);padding-right: 0.1px"> docker run <span style="box-sizing: border-box;color: rgb(209, 154, 102) !important">-d</span> <span style="box-sizing: border-box;color: rgb(209, 154, 102) !important">-p</span> <span style="box-sizing: border-box;color: rgb(209, 154, 102) !important">5000</span>:5000 <span style="box-sizing: border-box;color: rgb(209, 154, 102) !important">--name</span> nginx02 nginx:1.17.4</span>
映射到指定端口
<span style="color: rgb(247, 150, 70);">docker run -d -p 127.0.0.1:5003:5003 --name nginx04 nginx:1.17.4</span><br></br>
容器互联
什么是容器互联?容器互联是一种让多个容器中的应用进行快速交互的方式。
容器互联使用--link
参数进行容器间的互联。
--link
参数格式为
<span style="box-sizing: border-box;color: rgb(171, 178, 191);padding-right: 0.1px"><span style="box-sizing: border-box;color: rgb(209, 154, 102) !important">--link</span> name:alias</span><br></br><span style="box-sizing: border-box;color: rgb(171, 178, 191);padding-right: 0.1px"><span style="box-sizing: border-box"></span></span><br></br><span style="box-sizing: border-box;color: rgb(171, 178, 191);padding-right: 0.1px">name 为要链接容器的名称</span><br></br><span style="box-sizing: border-box;color: rgb(171, 178, 191);padding-right: 0.1px">alias 为别名</span>
例如:php容器与mysql容器互联
<span style="color: rgb(247, 150, 70);">docker run -d --name lnmp_php --link lnmp_mysql:mysql -v /home/www:/usr/share/nginx/html php-fmp</span><br></br>
我是夕阳何处寻,期待和优秀的你一起同行!
夕阳何处寻
2020年08月15日
请登录后再评论