docker設(shè)置了端口映射,不能訪問的解決方案
#docker ps 查看, 所有端口都 做了映射
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 764b158ba491 open-falcon-plus-02:v-daiyi-01 "/bin/bash" 2 days ago Up 3 hours 0.0.0.0:4444->4444/tcp, 0.0.0.0:6030-6031->6030-6031/tcp, 0.0.0.0:6070-6071->6070-6071/tcp, 0.0.0.0:6080-6081->6080-6081/tcp, 0.0.0.0:8080-8081->8080-8081/tcp, 0.0.0.0:8433->8433/tcp, 0.0.0.0:9912->9912/tcp, 0.0.0.0:14444->14444/tcp, 0.0.0.0:16060->16060/tcp, 0.0.0.0:18433->18433/tcp, 8082/tcp open-falcon-plus-daiyi-01
#但是查看日志
tail -40 /home/work/open-falcon/agent/logs/agent.log
test@ubuntu-10:/tmp/bak$ tail -40 /home/work/open-falcon/agent/logs/agent.log 2018/10/14 20:27:09 transfer.go:48: call Transfer.Update fail: &{{2 1} <nil> 10.0.10.103:8433 1s} dial tcp 10.0.10.103:8433: getsockopt: connection refused 2018/10/14 20:27:09 var.go:95: <= <Total=0, Invalid:0, Latency=0ms, Message:> 2018/10/14 20:27:09 rpc.go:41: dial 10.0.10.103:8433 fail: dial tcp 10.0.10.103:8433: getsockopt: connection refused 2018/10/14 20:27:11 rpc.go:41: dial 10.0.10.103:8433 fail: dial tcp 10.0.10.103:8433: getsockopt: connection refused 2018/10/14 20:27:15 rpc.go:41: dial 10.0.10.103:8433 fail: dial tcp 10.0.10.103:8433: getsockopt: connection refused 2018/10/14 20:27:23 rpc.go:41: dial 10.0.10.103:8433 fail: dial tcp 10.0.10.103:8433: getsockopt: connection refused 2018/10/14 20:27:23 transfer.go:48: call Transfer.Update fail: &{{0 0} <nil> 10.0.10.103:8433 1s} dial tcp 10.0.10.103:8433: getsockopt: connection refused 2018/10/14 20:27:23 var.go:95: <= <Total=0, Invalid:0, Latency=0ms, Message:> 2018/10/14 20:27:41 var.go:88: => <Total=92> <Endpoint:ubuntu, Metric:agent.alive, Type:GAUGE, Tags:, Step:60, Time:1539574061, Value:1> 2018/10/14 20:27:41 var.go:88: => <Total=5> <Endpoint:ubuntu, Metric:df.bytes.free.percent, Type:GAUGE, Tags:mount=/,fstype=ext4, Step:60, Time:1539574061, Value:67.01861018345224>
但是無法訪問
原因:
docker里面的host不能配置127.0.0.1 或者192.168.0.1 或則宿主機器將無法訪問端口
修改配置文件—(涉及到的,需要外部訪問的都需要修改)
[root@ubuntu-10 open-falcon]# vim transfer/config/cfg.json { "debug": true, "minStep": 30, "http": { "enabled": true, "listen": "0.0.0.0:6060" }, "rpc": { "enabled": true, "listen": "0.0.0.0:8433" **#此處監(jiān)聽外面8433. 改成0.0.0.0** }, "socket": { "enabled": true, "listen": "0.0.0.0:4444", "timeout": 3600 }, "judge": { "enabled": true, "batch": 200, "connTimeout": 1000, "callTimeout": 5000, "maxConns": 32, "maxIdle": 32, "replicas": 500, "cluster": { "judge-00" : "127.0.0.1:6080" } }, "graph": { "enabled": true, "batch": 200, "connTimeout": 1000, "callTimeout": 5000, "maxConns": 32, "maxIdle": 32, "replicas": 500, "cluster": { "graph-00" : "127.0.0.1:6070" } }, "tsdb": { "enabled": false, "batch": 200, "connTimeout": 1000, "callTimeout": 5000, "maxConns": 32, "maxIdle": 32, "retry": 3, "address": "127.0.0.1:8088" }
修改好之后重啟 docker里的服務(wù)
[root@ubuntu-10 open-falcon]# ./open-falcon restart transfer
再次查看日志
test@ubuntu-10:/tmp/bak$ tail -40 /home/work/open-falcon/agent/logs/agent.log 2018/10/15 02:52:48 var.go:88: => <Total=1> <Endpoint:test-endpoint, Metric:test-metric-97, Type:GAUGE, Tags:idc=lgi-test,loc=beijing-test, Step:20, Time:1539597168, Value:33> 2018/10/15 02:52:48 var.go:95: <= <Total=1, Invalid:0, Latency=0ms, Message:ok> 2018/10/15 02:52:48 var.go:88: => <Total=1> <Endpoint:test-endpoint, Metric:test-metric-97, Type:GAUGE, Tags:idc=lgi-test,loc=beijing-test, Step:20, Time:1539597168, Value:33> 2018/10/15 02:52:48 var.go:95: <= <Total=1, Invalid:0, Latency=0ms, Message:ok> 2018/10/15 02:52:48 var.go:88: => <Total=1> <Endpoint:test-endpoint, Metric:test-metric-97, Type:GAUGE, Tags:idc=lgi-test,loc=beijing-test, Step:20, Time:1539597168, Value:33> 2018/10/15 02:52:48 var.go:95: <= <Total=1, Invalid:0, Latency=0ms, Message:ok> #連接成功,數(shù)據(jù)傳入。
查看端口的連接性
test@ubuntu-10:/tmp/bak$ telnet 10.0.10.103 8433 Trying 10.0.10.103... Connected to 10.0.10.103. Escape character is '^]'. #這就是ok的
好啦~ 可以連接成功。
補充:docker 鏡像啟動成功但是無法訪問
解決辦法:
vi /etc/sysctl.conf 或者
vi /usr/lib/sysctl.d/00-system.conf 添加如下代碼:
net.ipv4.ip_forward=1
重啟network服務(wù)
systemctl restart network 查看是否修改成功
sysctl net.ipv4.ip_forward 如果返回為“net.ipv4.ip_forward = 1”則表示成功了
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。
相關(guān)文章
Docker中部署Redis集群與部署微服務(wù)項目的詳細過程
這篇文章主要介紹了Docker中部署Redis集群與部署微服務(wù)項目,主要包括使用docker部署的好處以及Docker與Kubernetes對比分析,需要的朋友可以參考下2022-06-06使用phpstorm對docker中的腳本進行debug的方法
這篇文章主要介紹了使用phpstorm對docker中的腳本進行debug的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-08-08Docker?cp命令詳解之如何在Docker容器和主機之間復(fù)制文件/文件夾
要從Docker容器中復(fù)制文件,可以使用docker?cp命令,下面這篇文章主要給大家介紹了關(guān)于Docker?cp命令詳解之如何在Docker容器和主機之間復(fù)制文件/文件夾的相關(guān)資料,文中通過圖文介紹的非常詳細,需要的朋友可以參考下2024-07-07MySQL docker容器數(shù)據(jù)更新統(tǒng)計shell腳本代碼方式
本文介紹了如何創(chuàng)建和配置一個腳本文件,使其能夠每隔一小時執(zhí)行一次,用于更新MySQL統(tǒng)計信息,腳本使用Docker來執(zhí)行MySQL命令,并將結(jié)果保存到文件中,文章還強調(diào)了權(quán)限設(shè)置和配置定時任務(wù)的步驟2025-01-01