最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

docker端口映射及外部無法訪問問題

 更新時(shí)間:2021年01月19日 10:53:12   作者:鴨子船長  
這篇文章主要介紹了docker端口映射及外部無法訪問問題,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

docker容器內(nèi)提供服務(wù)并監(jiān)聽8888端口,要使外部能夠訪問,需要做端口映射。

docker run -it --rm -p 8888:8888 server:v1

此時(shí)出現(xiàn)問題,在虛機(jī)A上部署后,在A內(nèi)能夠訪問8888端口服務(wù),但是在B卻不能訪問。

這應(yīng)該是由于請求被攔截。

一、查看firewall-cmd --state

如果輸出的是“not running”則FirewallD沒有在運(yùn)行,且所有的防護(hù)策略都沒有啟動(dòng),那么可以排除防火墻阻斷連接的情況了。

如果輸出的是“running”,表示當(dāng)前FirewallD正在運(yùn)行,需要再輸入下面的命令查看現(xiàn)在開放了哪些端口和服務(wù):

firewall-cmd --list-ports
firewall-cmd --list-services

解決方案有兩種:

1.關(guān)閉FirewallD服務(wù):

如果您不需要防火墻,那直接關(guān)掉FirewallD服務(wù)就好了

systemctl stop firewalld.service

2.添加策略對外打開指定的端口:

比如我們現(xiàn)在要打開對外5000/tcp端口,可以使用下面的命令:

firewall-cmd --add-port=5000/tcp --permanent
firewall-cmd --reload

如果只是臨時(shí)打開端口,去掉第一行命令中的“--permanent”參數(shù),那么當(dāng)再次重啟FirewallD服務(wù)時(shí),本策略將失效。

二、ip轉(zhuǎn)發(fā)沒有打開

sysctl net.ipv4.ip_forward

顯示net.ipv4.ip_forward=0則表示未打開。

三、service iptables打開并攔截了

可關(guān)閉service iptables

service iptables stop

若docker run時(shí)出現(xiàn)錯(cuò)誤:

iptables: No chain/target/match by that name.

則只需重啟docker服務(wù)即可

service docker restart

 或者:

#設(shè)置iptables防火墻為開機(jī)啟動(dòng)項(xiàng) 
systemctl enable iptables.service

#啟動(dòng)防火墻使配置文件生效 
systemctl start iptables.service

#停止防火墻 
systemctl stop iptables.service

#重啟防火墻使配置文件生效 
systemctl restart iptables.service

最終版本:

啟動(dòng)docker并進(jìn)行端口映射后,docker會在iptables中添加DNAT規(guī)則,將收到的對應(yīng)端口的包轉(zhuǎn)換ip并進(jìn)行轉(zhuǎn)發(fā),同時(shí)添加規(guī)則將所有來自docker網(wǎng)域的ip進(jìn)行轉(zhuǎn)換。

但是在Centos7上出現(xiàn)docker可以正常訪問外網(wǎng),但是外網(wǎng)發(fā)出的請求在經(jīng)過eth1接收轉(zhuǎn)發(fā)后送達(dá)不到docker0,或者送到卻出現(xiàn)(oui Unknown)的狀況。暫時(shí)不清楚這到底是為什么經(jīng)過DNAT后無法送達(dá)docker0.

最終解決辦法是在啟動(dòng)docker后,重啟iptables

service iptables restart

清空docker添加的所有規(guī)則,而后添加規(guī)則

iptables -t nat -A POSTROUTING -s 172.17.0.0/16 ! -o docker0 -j MASQUERADE

將所有來自docker的包172.17.0.0/16的ip替換為本機(jī)ip并發(fā)送,以達(dá)到docker訪問外網(wǎng)的目的。

到此這篇關(guān)于docker端口映射及外部無法訪問問題的文章就介紹到這了,更多相關(guān)docker端口映射及外部訪問內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • docker swarm 集群創(chuàng)建過程

    docker swarm 集群創(chuàng)建過程

    通過docker swarm 工具將一臺或者多臺安裝了docker的服務(wù)器組成一個(gè)完整的集群,該集群中的node節(jié)點(diǎn)可以通過Leader節(jié)點(diǎn)管理,這篇文章主要介紹了docker swarm 集群創(chuàng)建,需要的朋友可以參考下
    2024-03-03
  • 解決docker訪問外部https數(shù)字證書問題

    解決docker訪問外部https數(shù)字證書問題

    這篇文章主要介紹了docker訪問外部https數(shù)字證書問題,為了解決證書驗(yàn)證的問題,我們需要在構(gòu)建 docker 鏡像的時(shí)候?qū)?nbsp;ca-certificates 根證書裝上,需要的朋友可以參考下
    2022-09-09
  • docker?pull報(bào)錯(cuò)unexpected?EOF問題的解決方案

    docker?pull報(bào)錯(cuò)unexpected?EOF問題的解決方案

    在清理Docker私有倉庫的垃圾鏡像和緩存后,新推送到倉庫的鏡像會出現(xiàn)unexpectedEOF錯(cuò)誤,這篇文章主要介紹了docker?pull報(bào)錯(cuò)unexpected?EOF問題的解決方案,需要的朋友可以參考下
    2025-04-04
  • Docker 容器互聯(lián)互通的實(shí)現(xiàn)方法

    Docker 容器互聯(lián)互通的實(shí)現(xiàn)方法

    這篇文章主要介紹了Docker 容器互聯(lián)互通,本文講解不同網(wǎng)絡(luò)下的容器可以通過加入同一個(gè)docker網(wǎng)絡(luò),來訪問該docker網(wǎng)絡(luò)下的容器,并且既可以通過容器ip也可以通過容器名連接,非常方便,需要的朋友可以參考下
    2022-10-10
  • CentOS系統(tǒng)下docker的安裝配置及使用介紹

    CentOS系統(tǒng)下docker的安裝配置及使用介紹

    這篇文章主要介紹了CentOS系統(tǒng)下docker的安裝配置及使用詳細(xì)介紹,需要的朋友可以參考下
    2016-10-10
  • Docker鏡像的導(dǎo)入導(dǎo)出代碼實(shí)例

    Docker鏡像的導(dǎo)入導(dǎo)出代碼實(shí)例

    這篇文章主要介紹了Docker鏡像的導(dǎo)入導(dǎo)出代碼實(shí)例,本文實(shí)例講解的很透徹很明了,有需要的同學(xué)可以參考下
    2021-03-03
  • 在Ubuntu?Server?22.04上安裝?Docker的詳細(xì)步驟記錄

    在Ubuntu?Server?22.04上安裝?Docker的詳細(xì)步驟記錄

    通過使用容器技術(shù),Docker能夠讓開發(fā)人員將應(yīng)用及其依賴環(huán)境一同打包,從而實(shí)現(xiàn)快速部署、一致的開發(fā)環(huán)境和優(yōu)秀的可移植性,這篇文章主要給大家給大家介紹了關(guān)于在Ubuntu?Server?22.04上安裝?Docker詳細(xì)步驟的相關(guān)資料,需要的朋友可以參考下
    2024-08-08
  • 使用docker compose搭建一個(gè)elk系統(tǒng)的方法

    使用docker compose搭建一個(gè)elk系統(tǒng)的方法

    這篇文章主要介紹了使用docker-compose搭建一個(gè)elk系統(tǒng)的方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-08-08
  • 解決Docker Desktop運(yùn)行一直轉(zhuǎn)問題

    解決Docker Desktop運(yùn)行一直轉(zhuǎn)問題

    遇到Docker啟動(dòng)報(bào)錯(cuò)、Docker Desktop運(yùn)行不正常等問題,常見解決方案包括以管理員身份運(yùn)行CMD,重啟Docker服務(wù),恢復(fù)Docker Desktop出廠設(shè)置,啟用Windows功能等,最終通過運(yùn)行cmd命令"netsh winsock reset"解決問題,但需注意此操作可能導(dǎo)致Docker鏡像丟失
    2024-09-09
  • 淺談Docker Desktop for Linux和Docker Engine區(qū)別

    淺談Docker Desktop for Linux和Docker Engine

    本文主要介紹了Docker Desktop for Linux和Docker Engine區(qū)別,具有一定的參考價(jià)值,感興趣的可以了解一下
    2023-10-10

最新評論

临猗县| 沂源县| 龙岩市| 承德县| 新源县| 天镇县| 郯城县| 兴化市| 汉阴县| 阿克苏市| 珲春市| 资中县| 陵水| 瑞安市| 伊春市| 信丰县| 鹤山市| 庆阳市| 隆安县| 宜兰市| 贡山| 富民县| 铅山县| 旌德县| 石狮市| 聂拉木县| 施甸县| 奈曼旗| 荔波县| 华宁县| 衡阳县| 湖南省| 宿松县| 唐海县| 松潘县| 济宁市| 光泽县| 伽师县| 鄱阳县| 泽普县| 辽源市|