ポートマッピングDocker コンテナを起動する前にポート マッピングを行わないと、コンテナ外部のネットワーク経由でコンテナ内のネットワーク アプリケーションやサービスにアクセスできません。一部のネットワーク アプリケーションやサービスはコンテナ内で実行されることが多いため、コンテナ外のネットワークを介してコンテナ内のネットワーク アプリケーションやサービスにアクセスする場合は、コンテナにポートをマップする必要があります。docker ランダムポートマッピング
[root@izoq008ryseuupz ~]# docker イメージをプル nginx デフォルトタグの使用: 最新 最新: library/nginx からプル 852e50cd189d: すでに存在します 571d7e852307: プル完了 addb10abd9cb: プル完了 d20aa7ccdb77: プル完了 8b03f1e11359: プル完了 ダイジェスト: sha256:6b1daa9462046581ac15be20277a7c75476283f969cb3a61c8725ec38d3b01c3 ステータス: nginx:latest の新しいイメージをダウンロードしました docker.io/ライブラリ/nginx:最新 [root@izoq008ryseuupz ~]# docker イメージ リポジトリ タグ イメージ ID 作成 サイズ nginx 最新 bc9a0695f571 2日前 133MB 次に、 [root@izoq008ryseuupz ~]# docker run -itd -P --name nginx.1 nginx 91e3c7ed957f8196fd631eb7bce21acaa96bc253551303ecba2bf193201284ba
[root@izoq008ryseuupz ~]# docker ps -l コンテナID イメージ コマンド 作成ステータス ポート名 91e3c7ed957f nginx "/docker-entrypoint.…" 17 分前 5 秒前に起動 0.0.0.0:32775->80/tcp nginx.1 [root@izoq008ryseuupz ~]# docker は nginx.1 をログに記録します ... 111.8.49.168 - - [2020/11/27:09:03:53 +0000] "GET / HTTP/1.1" 200 612 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.66 Safari/537.36" "-" 2020/11/27 09:03:53 [エラー] 21#21: *1 open() "/usr/share/nginx/html/favicon.ico" が失敗しました (2: そのようなファイルまたはディレクトリはありません)、クライアント: 111.8.49.168、サーバー: localhost、リクエスト: "GET /favicon.ico HTTP/1.1"、ホスト: "ip:32775"、リファラー: "http://ip:32775/" 111.8.49.168 - - [2020/11/27:09:03:53 +0000] "GET /favicon.ico HTTP/1.1" 404 555 "http://ip:32775/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.66 Safari/537.36" "-" ポートマッピングの指定ポート マッピングを指定するには、 [root@izoq008ryseuupz ~]# docker run -itd -p 8083:80 --name nginx.2 nginx 0e62792a194559bf33c2b39f70b64133cb89a48846278ccee651fda68aa6dad1 [root@izoq008ryseuupz ~]# docker ps -l コンテナID イメージ コマンド 作成ステータス ポート名 0e62792a1945 nginx "/docker-entrypoint.…" 6 秒前 5 秒前に起動 0.0.0.0:8083->80/tcp nginx.2 このとき、コンテナ内の [root@izoq008ryseuupz ~]# docker は nginx.2 をログに記録します ... 111.8.49.168 - - [2020/11/27:09:28:32 +0000] "GET / HTTP/1.1" 200 612 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.66 Safari/537.36" "-" 2020/11/27 09:28:32 [エラー] 28#28: *1 open() "/usr/share/nginx/html/favicon.ico" が失敗しました (2: そのようなファイルまたはディレクトリはありません)、クライアント: 111.8.49.168、サーバー: localhost、リクエスト: "GET /favicon.ico HTTP/1.1"、ホスト: "ip:8083"、リファラー: "http://ip:8083/" 111.8.49.168 - - [2020/11/27:09:28:32 +0000] "GET /favicon.ico HTTP/1.1" 404 555 "http://ip:8083/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.66 Safari/537.36" "-"
[root@izoq008ryseuupz ~]# docker ps コンテナID イメージ コマンド 作成ステータス ポート名 0e62792a1945 nginx "/docker-entrypoint.…" 7 分前 7 分前にアップ 0.0.0.0:8083->80/tcp nginx.2 91e3c7ed957f nginx "/docker-entrypoint.…" 53 分前 36 分前に起動 0.0.0.0:32775->80/tcp nginx.1 インターネット上の まず、 C:\Users\Kaven>ping 0.0.0.0 32 バイトのデータで 0.0.0.0 に ping を実行しています: PING: 送信に失敗しました。よくある不具合。 PING: 送信に失敗しました。よくある障害。 PING: 送信に失敗しました。よくある障害。 PING: 送信に失敗しました。よくある障害。 0.0.0.0 の Ping 統計: パケット: 送信 = 4、受信 = 0、損失 = 4 (100% 損失)、 指定されたアドレスの指定されたポートマッピング
[root@izoq008ryseuupz ~]# docker stop nginx.2 nginx.2 [root@izoq008ryseuupz ~]# docker run -itd -p 127.0.0.1:8083:80 --name nginx.3 nginx a20b18b97fa4bf7576f6a0d769394a390cfb64ad5fc895453b548bf3f75105ca [root@izoq008ryseuupz ~]# docker ps -l コンテナID イメージ コマンド 作成ステータス ポート名 a20b18b97fa4 nginx "/docker-entrypoint.…" 4 秒前 4 秒前に起動 127.0.0.1:8083->80/tcp nginx.3
「ポート」: { "80/tcp": [ { "ホストIP": "127.0.0.1", "ホストポート": "8083" } ] } 次のコマンドは、デフォルトで docker run -itd -p 8083:80 --name nginx.4 nginx [root@izoq008ryseuupz ~]# docker run -itd -p 8083:80 --name nginx.4 nginx a5211ec678440044945e4d6f16fe59f3ac10367192262768096e7b748ebd027c docker: デーモンからのエラー応答: ドライバーはエンドポイント nginx.4 での外部接続のプログラミングに失敗しました (809bed1de2bb89f5d54b5b200503701279a153e60dac08b93e13af8c40a02e36): ユーザーランド プロキシの開始エラー: listen tcp 0.0.0.0:8083: bind: アドレスは既に使用されています。 次のコマンドでコンテナを起動できます。 docker run -itd -p 127.0.0.2:8083:80 --name nginx.5 nginx [root@izoq008ryseuupz ~]# docker run -itd -p 127.0.0.2:8083:80 --name nginx.5 nginx f60dcb586968471e7a8127ccef4cb4e89c4198df748da404f78afaff4afa42de
[root@izoq008ryseuupz ~]# docker ps -a コンテナID イメージ コマンド 作成ステータス ポート名 f60dcb586968 nginx "/docker-entrypoint.…" 19 秒前 18 秒前に起動 127.0.0.2:8083->80/tcp nginx.5 a5211ec67844 nginx "/docker-entrypoint.…" 2 分前 nginx.4 を作成しました a20b18b97fa4 nginx "/docker-entrypoint.…" 7 分前 7 分前に起動 127.0.0.1:8083->80/tcp nginx.3 0e62792a1945 nginx "/docker-entrypoint.…" 29 分前 終了 (0) 7 分前 nginx.2 91e3c7ed957f nginx "/docker-entrypoint.…" 約 1 時間前 58 分前に起動 0.0.0.0:32775->80/tcp nginx.1 指定されたアドレスのランダムポートマッピング
[root@izoq008ryseuupz ~]# docker run -itd -p 127.0.0.1::80 --name nginx.6 nginx 396b7d9e64c047187c0391485ba1d275587d86409573e882bc68a9357dfcb6f2 [root@izoq008ryseuupz ~]# docker ps -l コンテナID イメージ コマンド 作成ステータス ポート名 396b7d9e64c0 nginx "/docker-entrypoint.…" 9 秒前 9 秒前に起動 127.0.0.1:32768->80/tcp nginx.6 Docker が 複数のポートマッピング複数のポートをマップするには、複数の [root@izoq008ryseuupz ~]# docker run -itd -p 9091:9091 -p 9092:8080 -p 9093:8083 --name nginx.8 nginx 5ac6438dcc2a2d1b7f668eb10d8285085c396a44f896aae0b3dc09935e4e95eb [root@izoq008ryseuupz ~]# docker ps -l コンテナID イメージ コマンド 作成ステータス ポート名 5ac6438dcc2a nginx "/docker-entrypoint.…" 6 秒前 4 秒前に起動 80/tcp、0.0.0.0:9091->9091/tcp、0.0.0.0:9092->8080/tcp、0.0.0.0:9093->8083/tcp nginx.8 ポートマッピング構成の表示
[root@izoq008ryseuupz ~]# docker ポート nginx.6 80 127.0.0.1:32768 [root@izoq008ryseuupz ~]# docker ポート nginx.5 80 127.0.0.2:8083 [root@izoq008ryseuupz ~]# docker ポート nginx.3 80/tcp -> 127.0.0.1:8083 [root@izoq008ryseuupz ~]# docker ポート nginx.8 8080/tcp -> 0.0.0.0:9092 8083/tcp -> 0.0.0.0:9093 9091/tcp -> 0.0.0.0:9091 これで、Docker コンテナのポート マッピングの紹介は終わりです。 Docker のプライマリ ネットワーク ポート マッピングの構成に関するこの記事はこれで終わりです。Docker ポート マッピングに関するより関連性の高いコンテンツについては、123WORDPRESS.COM の過去の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: Chrome をクラッシュさせる CSS コードの行
>>: JSはBaidu Newsナビゲーションバーの効果を実現
目次インストールパッケージのダウンロードインストール環境変数の設定インストールが成功したか確認する記...
目次1つ。環境二。予防三つ。例Zabbix トリガーがしきい値に達すると、アラート メッセージの送信...
Web ページを作成する場合、通常、コンピューターの画面サイズと携帯電話の画面サイズの違いなどの問題...
最近、VMware 仮想マシンで CentOS を試していたのですが、インストール後にインターネット...
Cerebro は、Elasticsearch バージョン 5.x より前の Elasticsear...
目次pom 構成Setting.xml 構成ログインステータスログインが必要ですログインは必要ありま...
公式サイトから MySQL をダウンロードしてインストールし、クライアントにログインするにはどうすれ...
コードをコピーコードは次のとおりです。 <input type="text"...
1. サーバー ホストをクリックし、右側の操作リストで [仮想スイッチ管理] をクリックして、仮想...
目次1. トリガーソリューション2. パーティションテーブルソリューション3. 一般的な表領域ソリュ...
Firefox、Opera、その他のブラウザは Webdings フォントをサポートしていません。回...
HTML タグには、ページのタイトルを処理するための特別なタグがあります。これらは h1、h2、h3...
目次1. 説明2. インストール3. テスト1. 説明Vue Router は、Vue.js の公式...
CentOS6.9はMysql5.7をインストールします。参考までに、詳細は次のとおりです。 1. ...
Ubuntu でサービスを作成し、自動的に起動する方法: 1. [/lib/systemd/syst...