【Docker】Docker基礎-埠對映與容器互聯

小亮520cl發表於2018-04-02
1.新建立了一個mydocker的容器,在裡面安裝了一個mysql並啟動,希望透過centos能直接訪問容器的mysql資料庫


方法一

  1. [root@mysql01 ~]# docker inspect mydocker|grep -i ipaddre
  2.             "SecondaryIPAddresses": null,
  3.             "IPAddress": "172.17.0.3",
  4.                     "IPAddress": "172.17.0.3",



  5. 配置轉發:
  6. [root@mysql01 ~]# iptables -t nat -A DOCKER -p tcp --dport 3388 -j DNAT --to-destination 172.17.0.3:3306

  1. 檢查:
  2. [root@mysql01 ~]# docker port mydocker
  3. [root@mysql01 ~]# netstat -nputl | grep -i 3388
  [root@mysql01 ~] iptables -t nat -L -n  (埠轉發得透過這種方式檢視)
 



方法二:

  1. 1.先將mydocker容器儲存為一個映象
  2. docker commit mydocker myimages

  3. 2.再在myimages映象上重新啟動一個容器mysql5.6.24並指定埠對映
  4. docker run -d --name mysql5.6.24 -p 3366:3306 -it myimages /bin/bash
  
 3.檢查
 [root@mysql01 ~]# netstat -nputl|grep -i 3366
tcp6       0      0 :::3366                 :::*      LISTEN      17673/docker-proxy- 
[root@mysql01 ~]# docker port mysql5.6.24
3306/tcp -> 0.0.0.0:3366

 成功,但是這個方法好惡心哦,要是再加個服務怎麼辦?


其他方法我還沒試
參考:

https://www.cnblogs.com/jie-fang/p/7920863.html

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29096438/viewspace-2152496/,如需轉載,請註明出處,否則將追究法律責任。

相關文章