国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術文章
文章詳情頁

Docker容器間通信與外網通信的操作

瀏覽:128日期:2024-11-02 09:15:33
一 容器間通信1.容器的網絡共享

處于這個模式下的docker容器會共享一個網絡棧,這樣兩個容器之間可以使用localhost高效快速通信。

使用于web服務器與應用服務器之間的通信。

Docker容器間通信與外網通信的操作

##清空實驗環境[root@server1 ~]# docker ps -aCONTAINER ID IMAGECOMMAND CREATED STATUS PORTSNAMES ##默認網絡創建容器[root@server1 ~]# docker run -it --name vm1 ubunturoot@b1a2a90f98a5:/# ip a1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever368: eth0@if369: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default link/ether 02:42:ac:11:00:02 brd ff:ff:ff:ff:ff:ff inet 172.17.0.2/16 brd 172.17.255.255 scope global eth0 valid_lft forever preferred_lft foreverroot@b1a2a90f98a5:/# [root@server1 ~]# ##container創建與vm1 網絡共享的vm2[root@server1 ~]# docker run -it --name vm2 --network container:vm1 ubunturoot@b1a2a90f98a5:/# ip a1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever368: eth0@if369: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default link/ether 02:42:ac:11:00:02 brd ff:ff:ff:ff:ff:ff inet 172.17.0.2/16 brd 172.17.255.255 scope global eth0 valid_lft forever preferred_lft foreverroot@b1a2a90f98a5:/#

Docker容器間通信與外網通信的操作

2.--link方式

Docker容器間通信與外網通信的操作

##清空鏡像[root@server1 ~]# docker rm -f vm1vm1[root@server1 ~]# docker rm -f vm2vm2[root@server1 ~]# docker ps -aCONTAINER ID IMAGECOMMAND CREATED STATUS PORTSNAMES ##默認網絡創建vm1[root@server1 ~]# docker run -it --name vm1 ubunturoot@68e56c57a9a0:/# ip a1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever370: eth0@if371: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default link/ether 02:42:ac:11:00:02 brd ff:ff:ff:ff:ff:ff inet 172.17.0.2/16 brd 172.17.255.255 scope global eth0 valid_lft forever preferred_lft foreverroot@68e56c57a9a0:/# [root@server1 ~]# ##--link方式創建vm1子網的容器vm2[root@server1 ~]# docker run -it --name vm2 --link vm1:web ubunturoot@61267851b484:/# ip a1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever372: eth0@if373: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default link/ether 02:42:ac:11:00:03 brd ff:ff:ff:ff:ff:ff inet 172.17.0.3/16 brd 172.17.255.255 scope global eth0 ##ip與vm1同網段,遞增 valid_lft forever preferred_lft forever ##解析文件中含有vm1 的ip 與別名等信息root@61267851b484:/# cat /etc/hosts127.0.0.1 localhost::1 localhost ip6-localhost ip6-loopbackfe00::0 ip6-localnetff00::0 ip6-mcastprefixff02::1 ip6-allnodesff02::2 ip6-allrouters172.17.0.2 web 68e56c57a9a0 vm1172.17.0.3 61267851b484root@61267851b484:/# ^Croot@61267851b484:/#

Docker容器間通信與外網通信的操作

--link

更新hosts文件

link容器的變量也復制過來

Docker容器間通信與外網通信的操作

Docker容器間通信與外網通信的操作

root@61267851b484:/# envHOSTNAME=61267851b484TERM=xtermLS_COLORS=rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lz=01;31:*.xz=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.axv=01;35:*.anx=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.axa=00;36:*.oga=00;36:*.spx=00;36:*.xspf=00;36:PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/binPWD=/SHLVL=1HOME=/rootWEB_NAME=/vm2/webLESSOPEN=| /usr/bin/lesspipe %sLESSCLOSE=/usr/bin/lesspipe %s %s_=/usr/bin/envroot@61267851b484:/#

容器停止 ip將釋放掉,開啟后重新獲取其他ip,link的容器自動更新hosts文件

二 容器與外網間的通信

Docker容器間通信與外網通信的操作

查看當前iptable的nat表火墻策略

[root@server1 ~]# iptables -t nat -nLChain PREROUTING (policy ACCEPT)target prot opt sourcedestination DOCKER all -- 0.0.0.0/0 0.0.0.0/0 ADDRTYPE match dst-type LOCAL Chain INPUT (policy ACCEPT)target prot opt sourcedestination Chain OUTPUT (policy ACCEPT)target prot opt sourcedestination DOCKER all -- 0.0.0.0/0 !127.0.0.0/8 ADDRTYPE match dst-type LOCAL Chain POSTROUTING (policy ACCEPT)target prot opt sourcedestination MASQUERADE all -- 172.26.0.0/24 0.0.0.0/0 MASQUERADE all -- 172.20.0.0/16 0.0.0.0/0 MASQUERADE all -- 172.18.0.0/16 0.0.0.0/0 MASQUERADE all -- 172.17.0.0/16 0.0.0.0/0 Chain DOCKER (2 references)target prot opt sourcedestination RETURN all -- 0.0.0.0/0 0.0.0.0/0 RETURN all -- 0.0.0.0/0 0.0.0.0/0 RETURN all -- 0.0.0.0/0 0.0.0.0/0 RETURN all -- 0.0.0.0/0 0.0.0.0/0

##創建nginx容器,并映射端口[root@server1 ~]# docker run -d --name nginx -p 80:80 nginxcfefe6420cfe60c46cb7a050c142af7eff86fa6d687c3577077a5b4e2c8b961c ##開啟80端口[root@server1 ~]# docker port nginx 80/tcp -> 0.0.0.0:80 [root@server1 ~]# netstat -antlp | grep 80tcp6 0 0 :::80 :::* LISTEN 27094/docker-proxy [root@server1 ~]# iptables -t nat -nLChain PREROUTING (policy ACCEPT)target prot opt sourcedestination DOCKER all -- 0.0.0.0/0 0.0.0.0/0 ADDRTYPE match dst-type LOCAL Chain INPUT (policy ACCEPT)target prot opt sourcedestination Chain OUTPUT (policy ACCEPT)target prot opt sourcedestination DOCKER all -- 0.0.0.0/0 !127.0.0.0/8 ADDRTYPE match dst-type LOCAL Chain POSTROUTING (policy ACCEPT)target prot opt sourcedestination MASQUERADE all -- 172.26.0.0/24 0.0.0.0/0 MASQUERADE all -- 172.20.0.0/16 0.0.0.0/0 MASQUERADE all -- 172.18.0.0/16 0.0.0.0/0 MASQUERADE all -- 172.17.0.0/16 0.0.0.0/0 MASQUERADE tcp -- 172.17.0.2 172.17.0.2 tcp dpt:80 Chain DOCKER (2 references)target prot opt sourcedestination RETURN all -- 0.0.0.0/0 0.0.0.0/0 RETURN all -- 0.0.0.0/0 0.0.0.0/0 RETURN all -- 0.0.0.0/0 0.0.0.0/0 RETURN all -- 0.0.0.0/0 0.0.0.0/0 DNAT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:80 to:172.17.0.2:80[root@server1 ~]#

Docker容器間通信與外網通信的操作

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持好吧啦網。如有錯誤或未考慮完全的地方,望不吝賜教。

標簽: Docker
相關文章:
主站蜘蛛池模板: 欧美一线免费http | 成人一级黄色毛片 | 国产情侣真实露脸在线最新 | 中文国产成人精品久久久 | 中文字幕在线观看国产 | 亚洲综合区 | 国产欧美综合在线一区二区三区 | 亚洲精品www久久久久久久软件 | 99这里只有精品66视频 | 免费观看呢日本天堂视频 | 青青热久久综合网伊人 | 国产成人一区二区三区精品久久 | 韩国一级永久免费观看网址 | 国产欧美日韩一区二区三区在线 | 久久机热综合久久国产 | 国产六区| 亚洲国产第一区二区香蕉日日 | www.久草.com | 真实一级一级一片免费视频 | 欧美成人私人视频88在线观看 | 男女视频在线观看 | 欧美综合在线视频 | 99久久综合 | 国产亚洲精品自在久久77 | 亚洲精品国产福利一区二区三区 | 国产午夜亚洲精品第一区 | 一级做a爰片性色毛片视频图片 | 亚洲精品第五页 | 久久91亚洲精品中文字幕 | 国产精品亚洲片在线观看不卡 | 国产私拍福利精品视频推出 | 日韩欧美一级a毛片欧美一级 | 久久久久久久久久久福利观看 | 久久久这里只有精品加勒比 | 五月久久亚洲七七综合中文网 | 国产一区二区亚洲精品天堂 | 欧美成人手机视频免费播放 | 性刺激欧美三级在线现看中文 | 国产日韩在线播放 | 国产成人综合精品 | 久久精品亚洲综合一品 |