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が起動して実行されていることがわかります。