1、獲得容器IP
将<code>container_name</code> 換成實際環境中的容器名
<code>docker inspect `container_name` | </code><code>grep</code> <code>IPAddress1</code>
2、 iptable轉發端口
将容器的8000端口映射到docker主機的8001端口
<code>iptables -t nat -A DOCKER -p tcp --dport 8001 -j DNAT --to-destination 172.17.0.19:800012</code>
1.送出一個運作中的容器為鏡像
<code>docker commit -m </code><code>'add images'</code> <code>mycentos linjie</code><code>/mycentos</code><code>:v1</code>
2.運作鏡像并添加端口
<code>docker run -d -p 8000:80 linjie</code><code>/mycentos</code><code>:v1 </code><code>/bin/bash</code>
<code>3.docker環境的防火牆配置初始化docker配置</code>
<code>[root@master data]</code><code># cat /etc/sysconfig/iptables </code>
<code># Generated by iptables-save v1.4.7 on Tue Nov 28 17:11:06 2017</code>
<code>*filter</code>
<code>:INPUT ACCEPT [120034:127871175]</code>
<code>:FORWARD ACCEPT [16:832]</code>
<code>:OUTPUT ACCEPT [81537:11246389]</code>
<code>:DOCKER - [0:0]</code>
<code>-A FORWARD -o docker0 -j DOCKER </code>
<code>-A FORWARD -o docker0 -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT </code>
<code>-A FORWARD -i docker0 ! -o docker0 -j ACCEPT </code>
<code>-A FORWARD -i docker0 -o docker0 -j ACCEPT </code>
<code>COMMIT</code>
<code># Completed on Tue Nov 28 17:11:06 2017</code>
<code>*nat</code>
<code>:PREROUTING ACCEPT [2:288]</code>
<code>:POSTROUTING ACCEPT [11:621]</code>
<code>:OUTPUT ACCEPT [4:257]</code>
<code>-A PREROUTING -m addrtype --dst-</code><code>type</code> <code>LOCAL -j DOCKER </code>
<code>-A POSTROUTING -s 172.17.0.0</code><code>/16</code> <code>! -o docker0 -j MASQUERADE </code>
<code>-A OUTPUT ! -d 127.0.0.0</code><code>/8</code> <code>-m addrtype --dst-</code><code>type</code> <code>LOCAL -j DOCKER </code>
<code>-A DOCKER -p tcp -m tcp --dport 8080 -j DNAT --to-destination 172.17.0.6:8080 </code>
本文轉自 藍葉子Sheep 51CTO部落格,原文連結:http://blog.51cto.com/dellinger/2045201,如需轉載請自行聯系原作者