3
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Dockerで、localhost同士が通信できない件の解決

Posted at

最近のGithubリポジトリは、両方まとめて作ってる人多いと思うんですが

Repo
┣ frontend
┗ backend

昔は Javascriptの Repo とサーバーサイドの Repo
別々に作ってましたよね?

で、コンテナを立てる時に、Repo が別になってると
別々のネットワークで立ち上がるじゃないですか?

Backend
http://localhost:8080
Frontend
http://localhost:8081

別々のコンテナ起動した時 fetch しようかな〜
って思う時に通信できないですよね。

失敗例

const res = fetch('http://localhost:8080/get-data')

多分 504 gateway timeout になって
「あれ〜通信できないな〜APIが止まってるのかな〜?」みたいに
思うかもですが、実はコンテナの中で閉じた通信をしてるっていう。

解決策

http://host.docker.internal:8080

ローカルの Docker Desktop には、共通の localhost ネットワークがある。
これを使えば network の設定書かなくても通信できます。

3
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?