docker访问宿主机mysql_docker容器内访问宿主机127.0.0.1服务
點擊上方”技術生活“,選擇“設為星標”
做積極的人,而不是積極廢人
背景
原因分析
解決方案
背景
????????已經通過docker啟動的elasticsearch 服務,監聽端口9200。在宿主機中直接通過http://127.0.0.1:9200 可以直接訪問,但是通過docker訪問缺不行,訪問url:http://127.0.0.1:9200 或者http://localhost:9200
原因分析
????docker是一個虛擬環境,127.0.0.1和localhost指的是虛擬環境內部,而不是外部宿主機,所以無法這樣訪問.
解決方案
? ?1、?對于mac和windows,可以使用host.docker.internal替換127.0.0.1,如http://host.docker.internal:9200?(親測好使)
????2、對于Linux可以采用如下方案
????????????創建一個橋接網絡
????????????下面的localNet是網絡名字,可自行修改;關于192.168.0.0這個子網,也可以自行定義.
?默認按照下面的命令,執行后將可以通過192.168.0.1訪問宿主機.
docker?network?create?-d?bridge?--subnet?192.168.0.0/24?--gateway?192.168.0.1?localNet使用192.168.0.1替換127.0.0.1,如http://192.168.0.1:9200
如果你喜歡這篇文章,喜歡,轉發。
幸福生活很美好,也可以點下在看
明天見(。・ω・。)ノ?
總結
以上是生活随笔為你收集整理的docker访问宿主机mysql_docker容器内访问宿主机127.0.0.1服务的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python 管道 异步读取 selec
- 下一篇: 理财产品后面的数字是什么?原来是这个作用