Docker-ポートの管理

Dockerでは、コンテナー自体がアプリケーションをポートで実行できます。コンテナーを実行するときに、ポート番号を介してコンテナー内のアプリケーションにアクセスする場合は、コンテナーのポート番号をDockerホストのポート番号にマップする必要があります。これを実現する方法の例を見てみましょう。

この例では、DockerHubからJenkinsコンテナーをダウンロードします。次に、Jenkinsのポート番号をDockerホストのポート番号にマップします。

Step 1 −まず、DockerHubで簡単なサインアップを行う必要があります。

Step 2 −サインアップすると、DockerHubにログインします。

Step 3 −次に、Jenkinsの画像を参照して見つけましょう。

Step 4 −同じページを下にスクロールすると、Dockerが表示されます。 pullコマンド。これは、JenkinsイメージをローカルのUbuntuサーバーにダウンロードするために使用されます。

Step 5 −次にUbuntuサーバーに移動し、コマンドを実行します−

sudo docker pull jenkins

Step 6 −コンテナによって公開されているポートを理解するには、Dockerを使用する必要があります inspect command 画像を検査します。

これについてもっと学びましょう inspect コマンド。

dockerinspect

このメソッドを使用すると、コンテナまたはイメージに関する低レベルの情報を返すことができます。

構文

docker inspect Container/Image

オプション

  • Container/Image −検査するコンテナまたは画像

戻り値

JSON形式の画像またはコンテナーの低レベル情報。

sudo docker inspect jenkins

出力

の出力 inspectコマンドはJSON出力を提供します。出力を観察すると、「ExposedPorts」のセクションがあり、2つのポートが言及されていることがわかります。1つはdata port 8080のと他は control port 50000の。

Jenkinsを実行してポートをマップするには、Dockerを変更する必要があります runコマンドを実行し、ポートマッピングを指定する「p」オプションを追加します。したがって、次のコマンドを実行する必要があります-

sudo docker run -p 8080:8080 -p 50000:50000 jenkins

ポート番号マッピングの左側は、マップするDockerホストポートであり、右側はDockerコンテナのポート番号です。

ブラウザを開いてポート8080のDockerホストに移動すると、Jenkinsが起動して実行されていることがわかります。