前往
大廳
主題

解出DOCKER這個破鯨魚的各種遠端資料庫連線問題.........

Treeboy | 2021-12-08 20:54:26 | 巴幣 0 | 人氣 447

本人使用 Windows版本的,程式直接在電腦跑還可以連線到本地與遠端資料庫,但是包裝成Image並在容器跑就無法連線了,搞了1個多禮拜才知道,我根本設錯port了, container才連不上去,更別說資料庫了...

一開始還以為是公司電腦的問題才在家裡用,不過後來也還是失敗了,害我以為真的成功了,錯誤都一樣。

要執行的話還要加上對外-p讓本機與容器連線,就像這樣↓

docker run -p 8080:8888 my_image ← -p "你的Http的端口連線有8080與80這兩個" : "你在dockerfile設置的對外連線port"    ; my_image =你的image名稱,如果沒有設置就用ID。


還有重要的是dockerfile,
除了基本的FROM、RUN、COPY與CMD之外,還要加上EXPOSE ;
EXPOSE是設置對外的port,沒有設置的話,直接跑docker run會無法連線的。

目前可以進行遠端資料庫的連線了,但是本地設置的資料庫就沒辦法了,我推測可能也是port設置的問題,但至少已經知道該如何連遠端資料庫了。

我再找時間寫更詳細一點好了。

創作回應

宮水三夜未
可以用那個container ping你所謂的本地設置的資料庫 如果無法ping代表network不通。 一個container通常網路環境是獨立的,你用dockerfile的話 他也是在那個dockerfile彼此的container形成LAN。
2021-12-08 21:38:19
Treeboy
原乃如此
2021-12-08 22:21:44

更多創作