docker での公開とはどういう意味ですか?
docker では、expose は情報にマークを付けることを意味し、ドキュメント表現の 1 つの方法です。expose により、開発者は dockerfile 内の Image によってどのサービスが開かれているかをすぐに理解できます。ポートを直接開くことはできないため、操作に便利です。保守担当者はコンテナを使用する際にどのポートを開けばよいかを知っており、公開ポートがなければコンテナ間のサービスも相互にアクセスできます。
このチュートリアルの動作環境: linux7.3 システム、docker バージョン 19.03、Dell G3 コンピューター。
Docker でのエクスポーズとは何ですか?
Dockerfile でのエクスポーズはタグ情報です。 ポートは直接開くことができないため、運用保守担当者がオープンすることを知っています。コンテナを使用するときのポートです。 docker run -itd -P xxx:xxx を使用する場合、大文字の -P は、Dockerfile ファイル内の EXPOSE を使用して定義されたポートをマップします。この形式で手動で -p: を実行する必要はありません。
EXPOSE はドキュメント表現の単なる方法です。dockerfile では、開発者は Image によってどのサービスが開かれているかをすぐに理解できます。実際的な意味はありません。 EXPOSE ポートがない場合、コンテナ間のサービスも相互にアクセスできます。
Docker での公開と公開 (run -p) の違い
ここでの主な記録は、最近 docker を使用して発見した小さな疑問です。要約すると:
docker では、コマンド ラインの開始時に docker run -p で公開されたインターフェイスと dockerfile で公開されたインターフェイスの間の違いと接続は何ですか。
具体的な説明は次のとおりです。
たとえば、最初に Dockerfile でポート 8080 を公開します
EXPOSE 8080
次に、このイメージをビルドします。後で使用するための使用
docker build -t myimage - Dockerfile
次のステップは、docker run を使用してこのイメージのコンテナー インスタンスを開始し、ポートを公開することです
docker container run -d -p 8080 myimage
ここで言及した質問があります。すでに Dockerfile に追加されているので、ここでポート 8080 を公開することが宣言されていますが、このポート (-p) を公開する必要があります。 2 つの違いと接続は何ですか?
docker container run -d myimage
を直接実行できますか? この場合、公開されているポートはありますか?
テスト後(テストプロセスは省略していますが、興味のある友達は自分でテストできます。実際、この2つには本質的な違いがあり、ある程度の相関関係もあります。
これら 4 つの組み合わせをここにリストします。
A、Dockerfile で公開も -p
B も実行せず、Dockerfile でこのポートのみを公開します
C、同時に公開しますDockerfile で -p
D を実行し、-p
1 のみを実行します-----ケース A の場合、このコンテナーで開始します ホスト host はサービスにアクセスできません外部ネットワーク、またはリンク コンテナーによっても使用できません。このコンテナー内でのみ使用できます。
2--------ケース B の場合、このコンテナーで開始します。このサービスには、次のユーザーはアクセスできません。 Docker の外部の世界 (ホストおよび他のホスト) ですが、コンテナーを介して他のリンクのコンテナーからアクセスできます
link
3----------ケース C の場合、開始されたコンテナーには、docker の外部とリンクのコンテナーの両方からアクセスできます。
4--------ケース D の場合、実際には、docker は特別な暗黙的な変換を行っています。ケース C と同等で、外部またはリンクのコンテナーからアクセスできます (これは、docker がポート
# を外部に開く必要があるため、他のコンテナーと同等であると考えているため当てはまります。確実にアクセスされるため、docker は自動的に Expose を実行します。
推奨される学習: "docker ビデオ チュートリアル "
以上がdocker での公開とはどういう意味ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

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

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

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

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

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

ホットトピック









Dockerデスクトップの使用方法は? Dockerデスクトップは、ローカルマシンでDockerコンテナを実行するためのツールです。使用する手順には次のものがあります。1。Dockerデスクトップをインストールします。 2。Dockerデスクトップを開始します。 3。Docker Imageを作成します(DockerFileを使用); 4. Docker画像をビルド(Docker Buildを使用); 5。Dockerコンテナを実行します(Docker Runを使用)。

国内のミラーソースに切り替えることができます。手順は次のとおりです。1。構成ファイル/etc/docker/daemon.jsonを編集し、ミラーソースアドレスを追加します。 2。保存して終了した後、Docker Service Sudo SystemCtlを再起動してDockerを再起動して、画像のダウンロード速度と安定性を改善します。

Docker画像を作成する手順:ビルド命令を含むDockerFileを書きます。 Docker Buildコマンドを使用して、ターミナルで画像を作成します。画像にタグを付け、Dockerタグコマンドを使用して名前とタグを割り当てます。

Dockerバージョンを取得するには、次の手順を実行できます。Dockerコマンド「Docker -version」を実行して、クライアントバージョンとサーバーバージョンを表示します。 MacまたはWindowsの場合は、DockerデスクトップGUIのバージョンタブまたはDockerデスクトップメニューのバージョン情報を表示することもできます。

Docker LNMPコンテナコールステップ:コンテナの実行:Docker Run -D - Name LNMP -Container -P 80:80 -P 443:443 LNMPスタックコンテナIPを取得する:Docker Inspect LNMP -Container | GREP iPaddress Access Webサイト:http://< container ip>/index.phpsshアクセス:docker exec -it lnmp -container bash access mysql:mysql -u roo

Dockerプライベートリポジトリを構築して、コンテナ画像を安全に保存および管理し、厳格な制御とセキュリティを提供できます。手順には、リポジトリの作成、アクセスの付与、リポジトリの展開、画像のプッシュ、および画像の引くなどがあります。利点には、セキュリティ、バージョン制御、ネットワークトラフィックの削減、カスタマイズが含まれます。

Dockerに画像を保存するには、Docker Commitコマンドを使用して、指定されたコンテナの現在の状態、Syntax:Docker Commit [Options]コンテナID画像名を含む新しい画像を作成できます。画像をリポジトリに保存するには、Docker Pushコマンド、Syntax:Docker Push Image Name [:Tag]を使用できます。保存された画像をインポートするには、Docker Pullコマンド、Syntax:Docker Pull Image Name [:Tag]を使用できます。

Docker画像を更新する手順は次のとおりです。最新の画像タグ新しい画像をプルする新しい画像は、特定のタグのために古い画像を削除します(オプション)コンテナを再起動します(必要に応じて)
