Docker のポート マッピングとは何ですか?

Docker Nopoto Mappingutoha Hedesuka



Docker は、ソフトウェアやアプリケーションの作成、共有、実行によく使用される、よく知られたオープンソース プラットフォームです。 Docker イメージ、Docker エンジンまたはデーモン、Docker クライアントなどのさまざまなコンポーネントを使用して、コンテナー内のプロジェクトを実行します。ただし、コンテナの内部プロセスにアクセスするには、ポート マッピングが必要です。

この投稿では以下について説明します。







Dockerポートマッピングとは何ですか?

コンテナ内でサービスやアプリケーションを実行しているとき、ユーザーは通常、コンテナ内ではなく外部のアプリケーションやサービスにアクセスしたいと考えます。外部からコンテナのプロセスやサービスにアクセスするには、Docker でポート マッピング プロセスが使用されます。ポート マッピングは、コンテナのオープン ポートを Docker ホストのオープン ポートにマッピングするファイアウォール ルールを作成するプロセスです。このルールを介して、実行中のアプリケーションまたはサービスがホスト システムからアクセスできるようになります。



Docker でポートをマッピングするにはどうすればよいですか?

Docker でポートをマップするには、2 つのオプションを使用してホスト上でポートを公開します。 「 –publish” または “-p ”。 Docker でポートをマッピングするには、提供される手順に従ってください。



ステップ 1: Dockerfile を作成する

まず、単純な HTML プログラムを実行する Dockerfile を作成します。 インデックス.html ”。以下のコードでは:





  • から 」キーはコンテナのベースイメージを定義するために使用されます。
  • コピー ” ステートメントは、” をコピーするために利用されます。 インデックス.html ” ファイルをコンテナのパスに追加します。
  • エントリーポイント 」では、Docker コンテナの実行可能ファイルについて説明しています。
nginxから:最新
Index1.html /usr/share/nginx/html/index.html をコピーします。
ENTRYPOINT ['nginx', '-g', 'デーモンオフ;']

ステップ 2: Docker でイメージを作成する

次に、前述のコマンドを使用して新しいイメージを作成します。

docker build -t html 。



ステップ 3: ホスト上でコンテナを作成してマッピングする

次に、「」を通じてホスト上にコンテナを作成してマッピングします。 ドッカーラン ' 指図。ここで、「 -p 「オプションは実際にはローカルホストポートにコンテナをマッピングするために利用されます」 80 ”:

docker run -p 80:80 --name html-cont html

次に、すべてのコンテナをリストアップし、ポートがマッピングされているかどうかを確認します。

docker ps -a

ステップ 4: 検証

次に、「 インデックス.html コンテナ内で実行されているプログラムがホスト上でアクセスできるかどうか。この目的のために、「」に移動します。 http://localhost:80 ” ブラウザの URL:

Docker Compose でポートをマッピングするにはどうすればよいですか?

Docker Compose でポートをマップして、Docker コンテナーの外部から Compose サービスにアクセスするには、リストされている手順に従います。

ステップ 1: 「docker-compose.yml」ファイルを作成する

まず、「」を作成します。 docker-compose.yml ” ファイルを開き、次の指示を貼り付けます。

  • サービス ” キーは作成サービスを定義します。たとえば、「 ウェブ ” サービスが作成されます。
  • 建てる ” キーはビルド コンテキストにアクセスするために使用されます。以下のコードでは、「 」は、現在開いているディレクトリに配置されている Dockerfile を使用していることを意味します。
  • ポート 」キーは、ポートをマッピングするために特に使用されます。コンテナが公開するポートを定義します。
バージョン:「3」
サービス:
ウェブ:
建てる: 。
ポート:
-80:80

ステップ 2: Compose サービスを実行する

次に「」を実行します。 docker-構成アップ 」コマンドを使用して、マッピング ポートとコンテナ内でサービスを起動します。

docker-compose up -d

出力から、「」にアクセスしたことがわかります。 ウェブ ホスト上のコンテナの外部からのサービス:

Docker でのポート マッピングについては以上です。

結論

ポート マッピングは、コンテナのポートを Docker ホストのオープン ポートにマッピングするファイアウォール ルールを作成するプロセスであり、このルールを介して、実行中のアプリケーションまたはサービスがホスト システムからアクセスできるようになります。 Docker でポートをマッピングするには、「 -p」または「-公開」 ” オプションは” で使用されます。 ドッカーラン ' 指図。構成ファイルでは、「 ポート ” キーはポートのマッピングに使用されます。この投稿では、Docker のポート マッピングとは何か、およびポートをマッピングする方法を説明しました。