ドッカーコンテナからホストマシンにポートをどのように公開しますか?
dockerコンテナポートを公開するには、ホストはポートマッピングを介してコンテナサービスにアクセスする必要があります。 1。DockerRun-P [host_port]:[container_port]コマンドを使用して、docker run -p 8080:3000 my -web -appなどのコンテナを実行します。 2。露出指令を使用して、expose 3000などのDockerFileの目的をマークしますが、ポートは自動的に公開されません。 3.ポートなど、Docker ComposeのYMLファイルのポートセグメントを構成します。- "8080:3000"; 4. Docker PSを使用して、実行後にポートマッピングが効果的かどうかを確認します。上記の方法により、コンテナポートが正しく露出し、検証されていることが保証されます。
Dockerコンテナからホストマシンにポートを公開することは、コンテナ内のWebサーバー、API、またはデータベースなどのサービスを実行する場合、一般的なタスクです。キーは、ホストシステムのポートにコンテナの内部ポートをマッピングすることです。これにより、外部のDockerからアクセスできます。
1。DockerRunで-p
docker run
を使用します
ポートを公開する最も簡単な方法は、 docker run
でコンテナを実行するときに-p
(または--publish
)フラグを使用することです。
基本的な構文:
docker run -p [host_port]:[container_port] [image_name]
たとえば、ポート3000に耳を傾けるコンテナ内でWebアプリを実行している場合:
docker run -p 8080:3000 my-web-app
これで、ホストマシンでhttp://localhost:8080
経由でサービスにアクセスできます。
-
-p
フラグを繰り返すことで、複数のポートを指定できます。 - ホストポート(
-p 3000
)を省略すると、Dockerはランダムに使用可能なポートを自動的に割り当てます。 - これは、TCPおよびUDPで機能します。
-p 53:53/udp
を使用して、特にUDPポートを公開します。
2。 EXPOSE
dockerfileのポートを定義します
DockerFileにEXPOSE
命令を追加することで、画像が使用するポートを文書化できます。
3000を公開します
ただし、これは実際にポートを公開するわけではありません。コンテナを実行するときは-p
を使用する必要があります。後でコンテナを実行する人のメタデータとEXPOSE
と考えてください。
他の人が使用する画像を構築している場合、 EXPOSE
を含むなど、推測せずにどのポートが関連しているかを知るのに役立ちます。
3. Dockerを使用して、 ports
セクションで構成します
Docker Composeを使用している場合は、 docker-compose.yml
ファイルのports
セクションの下にあるポートマッピングを定義します。
サービス: WebApp: 画像:my-web-app ポート: - 「8080:3000」
これは-p
フラグと同じ効果を持ちますが、構成を集中させ、バージョン制御し続けます。
-
"3000"
などの短い構文を使用して、Dockerにランダムホストポートを割り当てることもできます。 - より制御するには、プロトコルやモードなどの追加オプションを使用して、長い構文を使用してください。
4. docker ps
で開いたポートを確認します
コンテナを起動した後、次のようなポートマッピングを確認します。
Docker PS
「ポート」列を見てください。次のようなものを表示する必要があります。
0.0.0.0:8080->3000/TCP
これにより、ホストのポート8080がコンテナ内のポート3000に転送されていることが確認されています。
ポートがリストされていない場合は、 -p
または構成されたports
を正しく使用したダブルチェック。
そして、それは基本的にそれです。 Dockerがどのようにマッピングするかを知ると、ポートを露出させることは複雑ではありませんが、 -p
フラグを忘れたり、 EXPOSE
と仮定したりするなどの小さな詳細を見落とすのは簡単です。
以上がドッカーコンテナからホストマシンにポートをどのように公開しますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undress AI Tool
脱衣画像を無料で

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

完全なPython Webアプリケーションを開発するには、次の手順に従ってください。1。DjangoやFlaskなどの適切なフレームワークを選択します。 2。データベースを統合し、Sqlalchemyなどの軌道を使用します。 3.フロントエンドを設計し、VueまたはReactを使用します。 4.テストを実行し、pytestまたはunittestを使用します。 5.アプリケーションを展開し、HerokuやAWSなどのDockerとプラットフォームを使用します。これらの手順を通じて、強力で効率的なWebアプリケーションを構築できます。

Dockerコンテナ内のプロセス情報を表示するには、次の3つの方法があります。1。Dockertopコマンドを使用して、コンテナ内のすべてのプロセスをリストし、PID、ユーザー、コマンド、およびその他の情報を表示します。 2. Dockerexecを使用してコンテナを入力し、PSまたはTOPコマンドを使用して詳細なプロセス情報を表示します。 3. Dockerstatsコマンドを使用して、コンテナリソースの使用をリアルタイムで表示し、Dockertopを組み合わせてコンテナのパフォーマンスを完全に理解します。

UbuntuにPytorchアプリケーションを展開するには、手順に従って実行できます。1。最初にPythonとPIPをインストールして、PythonとPIPがシステムに既にインストールされていることを確認してください。次のコマンドを使用してそれらをインストールできます:sudoaptupdatesudoaptindoaptinstalpython3python3-pip2。仮想環境(オプション)を作成してプロジェクト環境を分離するには、仮想環境を作成することをお勧めします:python3-mvenvmyenvsourcemyenv/bin/activatet

DebianでJenkinsの展開とチューニングは、インストール、構成、プラグイン管理、パフォーマンスの最適化など、複数のステップを含むプロセスです。 Jenkinsの効率的な展開を実現するための詳細なガイドを以下に示します。 Jenkinsを最初にインストールして、システムにJava環境がインストールされていることを確認してください。 Jenkinsは、適切に実行するにはJavaランタイム環境(JRE)が必要です。 sudoaptupdatesudoaptininstallopenjdk-11-jdkは、Javaのインストールが成功していることを確認します:Java-version next、add j

Dockerコンテナを停止する効率的な方法には、基本的なコマンドとツールの使用が含まれます。 1。Dockerstop$(dockerps-q)コマンドを使用して、Dockerstop-T30 $(dockerps-q)などのタイムアウト時間を調整します。 2。Dockerpsフィルタリングオプションを使用して、dockerstop $(dockerps-q - filter "label = app = web")など。 3. DockerComposeコマンドDocker-Composedownを使用します。 4。DB、アプリ、Webコンテナの停止など、コンテナを順番に停止するスクリプトを書き込みます。

異なるDocker画像バージョンの違いを比較するには、次の2つの方法があります。1。dockerdiffコマンドを使用して、コンテナファイルシステムの変更を表示します。 2。DockerHistoryコマンドを使用して、画像構築の階層の違いを表示します。これらの方法は、画像バージョンの理解と最適化に役立ちます。

Dockerコンテナ化テクノロジーを通じて、PHP開発者はPHPstormを使用して、開発効率と環境の一貫性を改善できます。特定の手順には以下が含まれます。1。PHP環境を定義するDockerFileを作成します。 2。phpstormでDocker接続を構成します。 3. DockerComposeファイルを作成して、サービスを定義します。 4.リモートPHPインタープリターを構成します。利点は強力な環境の一貫性であり、欠点には長いスタートアップ時間と複雑なデバッグが含まれます。

DebianシステムにDockerの自動展開を実装することは、さまざまな方法で実行できます。詳細な手順ガイドは次のとおりです。最初にdockerをインストールして、Debianシステムが最新のままであることを確認してください:sudoaptupdatesudoaptupgrade-y次に、必要なソフトウェアパッケージをインストールして、httpsを介してリポジトリへの適切なアクセスをサポートします:sudoaptinstallapt-transport-transport-httpsca-cartifatecurlsoft-cortecursoft-properties-common-common-compg inphy com
