Docker & Kubernetes for Developers · レッスン

Dockerネットワークの種類を理解する

bridge、host、overlayなどのDockerネットワークドライバーと、コンテナ間通信におけるユースケースを確認します。

レッスン 1/412 ステップ

「Dockerネットワークの種類を理解する」はCoddyKit上の無料Docker & Kubernetes for Developersレッスンです。 これはレッスン1/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはDocker & Kubernetes for Developers学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Docker & Kubernetes for Developersコースには全4レッスンが含まれています。

このレッスンの一部はまだ翻訳されておらず、英語で表示されています。

Intro to Docker Networks

Welcome to Docker networking! Containers need to talk to each other and the outside world. Docker networks make this possible.

Understanding network types is key to building robust and scalable applications. Let's dive in!

The Default Bridge Network

When you first install Docker, it creates a default bridge network named bridge. Unless specified, all new containers connect to this network.

  • Containers on the same default bridge can communicate via IP address.
  • They are isolated from the host machine's network.

Inspecting Default Bridge

You can see the default bridge network and its details using Docker commands. Try running these:

docker network ls
docker network inspect bridge

Custom Bridge Networks

While the default bridge works, custom bridge networks offer significant advantages:

  • Isolation: Better segmentation for different applications.
  • DNS Resolution: Containers can communicate by name, not just IP.
  • Portability: Easier to manage complex setups.

Creating a Custom Bridge Network

Let's create our own custom bridge network. This network will be isolated and provide DNS resolution for containers connected to it.

docker network create my-custom-app-net

Connect Containers to Custom Network

Now, let's run two containers on our my-custom-app-net and see them talk to each other using their names. This is a huge benefit!

docker run -d --name web1 --network my-custom-app-net nginx
docker run -it --rm --network my-custom-app-net alpine ping -c 2 web1

The 'Host' Network Driver

The host network driver is different. It removes network isolation between the container and the Docker host.

A container using the host network shares the host's network stack directly. This means:

  • No port mapping is needed.
  • The container uses the host's IP address.

Host Network Use Cases

The host network can be useful for specific scenarios:

  • Performance: Minimizes networking overhead.
  • Monitoring: Accessing host-level network interfaces directly.

However, it reduces isolation and can lead to port conflicts if not managed carefully.

docker run -it --rm --network host alpine sh

Overlay Networks for Swarm

When you start dealing with multiple Docker hosts (machines), you need a way for containers on different hosts to communicate. This is where overlay networks come in.

Overlay networks are crucial for Docker Swarm, allowing services to communicate seamlessly across an entire cluster.

Overlay Network Advantages

Overlay networks provide:

  • Multi-host communication: Containers on different physical machines can talk.
  • Service Discovery: Integrated DNS for services across the swarm.
  • Load Balancing: Distributes traffic among service replicas.

They abstract away the underlying physical network complexity.

Network Type Quiz

Test your knowledge of Docker network types!

Network Types Recap

Great job! You've learned about the main Docker network types:

  • Bridge (Default & Custom): For single-host container communication. Custom bridges add isolation and DNS.
  • Host: For containers that need direct access to the host's network stack.
  • Overlay: For multi-host container communication in a Docker Swarm.

Choosing the right network type is vital for your application's architecture. Next, we'll learn how to configure them!

無料で開始

AI チューターと学ぶ Docker & Kubernetes for Developers — 無料

ブラウザでリアルコードを書いて実行し、24/7 の AI チューターから瞬時にサポートを受け、ウェブまたはアプリで続きから学習できます。

コース
12
レッスン
48

よくある質問

「Dockerネットワークの種類を理解する」レッスンは無料ですか?

はい。「Dockerネットワークの種類を理解する」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Docker & Kubernetes for Developersコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Docker & Kubernetes for Developersコースには全4レッスンが含まれています。

「Dockerネットワークの種類を理解する」で何を学びますか?

bridge、host、overlayなどのDockerネットワークドライバーと、コンテナ間通信におけるユースケースを確認します。 ブラウザで直接実行するハンズオンコードでDocker & Kubernetes for Developersを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

Docker & Kubernetes for Developersを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのDocker & Kubernetes for Developersは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン1/4です。

「Dockerネットワークの種類を理解する」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このDocker & Kubernetes for Developersレッスンでコードを書いて実行できますか?

はい。すべてのDocker & Kubernetes for Developersレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. Dockerネットワークの種類を理解する
  2. コンテナネットワークの設定
  3. ボリュームによるデータ永続化
  4. Docker Composeネットワークでコンテナを接続する
← Docker & Kubernetes for Developersに戻る