ドッカーへの初心者ガイド(第3部)-コミュニケーションとネットワーク
Beginner's guide to Docker(Part 1)- Dockerfile and Docker CLI commands
Parvathi ・ Sep 27 '21 ・ 8 min read
#docker
#devops
#beginners
#webdev
Beginner's Guide to Docker(Part 2)- Manage data in Docker
Parvathi ・ Sep 29 '21 ・ 5 min read
#docker
#devops
#beginners
#webdev
私たちはDockerの基礎について学びました.また、ボリュームとは何かを見ました.今、我々のアプリケーションのニーズとどのように我々はそれを達成することができるコミュニケーションのすべての種類がDockerを使用してください.
コンテナからWWWへ
場合によっては、Dockerコンテナで我々のアプリケーションを読むためにワールドワイドウェブと通信したいと思います、例えば、我々のアプリケーションは、私たちのiframeのためのビデオを取得するためにYouTube APIを使用するか、またはWikipedia APIを使用して任意の検索ウィジェットを構築する私たちは、YouTubeやWikipediaが公開されているAPIと通信する必要があります、これは私たちはそれ以上の努力なしで行うことができます、Dockerはボックスのこれをサポートしています.
コンテナトゥホスト
我々は我々のアプリケーションは、localhost上でホストされているMongoDBと接続する必要があるとしましょう、今何を行うことができますか?どのようにコンテナ内の我々のアプリケーションは、ローカルのホストgogodbに達する?
mongoose.connect('mongodb://localhost/todo_app', {useNewUrlParser: true, useUnifiedTopology: true});
単に上記のコードをmongoose.connect('mongodb://host.docker.internal/todo_app', {useNewUrlParser: true, useUnifiedTopology: true});
コンテナコンテナ
同じ例を取りましょう、我々のアプリケーションはMongoDBと通信したいですが、今回はホストマシンの代わりに別のコンテナでホストされています.
docker run --name mongoDb --rm -d -v data:/data/db mongo
docker container inspect mongoDb
上記のコマンドの結果から、我々はMongoコンテナのIPアドレスを見つけることができます"IPAddress": "172.17.0.2",
接続文字列をmongoose.connect('mongodb://172.17.0.2/todo_app', {useNewUrlParser: true, useUnifiedTopology: true});
待つのはこの唯一の方法ですか?だめ!ネットワーク
docker network COMMAND
Manage networks. You can use subcommands to create, inspect, list, remove, prune, connect, and disconnect networks.
私たちは、私たちのノードアプリケーションモンゴーDBとの交渉Mernスタックを使用して構築されたtodoアプリケーションを取ることができます.
ノードコンテナーとMongoコンテナを同じネットワークに持たせ、コンテナ名をホストのIPアドレスとして使用することができます.
docker network create todo-network
docker run \
--name mongodb_container \
--rm \
-d \
--network todo-network \
-v data:/data/db \
mongo
docker run \
--name todo-node \
-p 3030:3030 \
--rm \
--network todo-network \
todo-node
mongoose.connect('mongodb://mongodb_container/todo_app', {useNewUrlParser: true, useUnifiedTopology: true});
読んでくれてありがとう!次の記事で詳しく知る
Reference
この問題について(ドッカーへの初心者ガイド(第3部)-コミュニケーションとネットワーク), 我々は、より多くの情報をここで見つけました https://dev.to/paru429/beginner-s-guide-to-docker-part-3-communication-network-1p1nテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol