我對 docker 主題很陌生,我有一個將容器服務與傳統服務連接的問題。
目前我正在考慮用 grafana docker 容器替換傳統的 grafana 安裝(直接在 linux 服務器上)。
在 grafana 中,我必須連接到不同的資料源,如 mysql 實體、Winsows SQL 資料庫等。因此,grafana 正在提取資料。所有這些資料源都駐留在(并將仍然駐留在)其他主機上,它們不是容器。
那么我怎樣才能實作我的容器能夠與這些資料源通信呢?默認情況下可能還是我必須實作一種特殊型別的網路?我看到有一個名為 macvlan 的選項......這是正確的方法嗎?
BR簡
uj5u.com熱心網友回復:
據我所知,這應該是開箱即用的。至少,我在 docker 容器中使用 Grafana,它運行良好。
您可以通過打開這樣的容器外殼來測驗從 docker 容器內部到某些外部資源的連接:
docker exec -it <container ID> /bin/bash
進而
root@a9cbebfc4564:/# curl google.com
或者
root@a9cbebfc4564:/# ping <bla-bla>
上面的命令取決于 docker 映像環境(如作業系統或已安裝的軟體),但這可以像在常規 Unix env 上一樣解決
PS 我曾經遇到過 docker2host 連接問題,但這是由于主機端的防火墻配置不正確。
uj5u.com熱心網友回復:
由于您要替換傳統安裝,因此可以從主機網路開始。此模式為您提供與在主機上安裝相同的連接體驗。快速入門非常簡單:
docker run --network host grafana/grafana
請注意,由于 Grafana 容器現在共享主機網路,因此不需要--publish或--publish-all埠。
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/331729.html
