ホームページ >運用・保守 >Docker >Docker でスローガンを開始する方法

Docker でスローガンを開始する方法

PHPz
PHPzオリジナル
2023-04-26 10:28:136929ブラウズ

Docker は、開発者がアプリケーションを作成、デプロイ、実行できるようにするオープン ソースのコンテナ化プラットフォームで、開発、デプロイ、運用およびメンテナンスのプロセスをより簡単かつ効率的にします。開発者が Docker コンテナーでアプリケーションを実行する場合、アプリケーションの特定のポートを開く必要がある場合があります。

ポートを開くと、ネットワーク上の他のコンピューターが、実行中の Docker コンテナー内のアプリケーションにアクセスできるようになります。 Docker コンテナ内では、アプリケーションは 1 つ以上のポートをリッスンできます。たとえば、Web サーバーは通常、ポート 80 で待機します。ポートが正しく開かれていない場合、外部コンピュータはアプリケーションに接続できません。

Docker には、ポートを開いて管理するための複数の方法が用意されています。この記事では、Docker コンテナーでポートを開いて管理するいくつかの異なる方法を検討します。

docker run コマンドを使用してポートを開きます

開発者は Docker run コマンドを使用してポートを開くことができます。新しいコンテナーを作成するときに、-p オプションを使用して、開くポートを指定できます。このオプションを使用すると、コンテナ内のポートをホスト上のポートにマッピングできます。

たとえば、次のコマンドを使用して、新しい Nginx Web サーバー コンテナを起動し、コンテナ内のポート 80 をホスト マシンのポート 8000 にマップできます。

docker run -d -p 8000:80 nginx

上記のコマンドでは、 - d オプションは、コンテナーがバックグラウンドで実行されるように指定するために使用されます。 -p オプションは、マッピングするポートを指定するために使用されます。

docker-compose ファイルを使用してポートを開く

Docker Compose は、複数コンテナーの Docker アプリケーションを定義および実行するためのツールです。 Docker Compose を使用すると、開発者は docker-compose.yml ファイルを使用してマルチコンテナー アプリケーションの構造と依存関係を定義できます。コンテナー アプリケーションの各コンテナーには独自のポートがあり、Docker Compose はこれらのポートを管理する簡単な方法を提供します。

Docker Compose ファイルで、開発者はコンテナごとにポート マッピングを定義できます。たとえば、次の Docker Compose ファイルは、Web サーバーとデータベース コンテナーを定義し、それらのポートをホストのポートにマップします。

version: "3.7"
services:
  web:
    build: .
    ports:
      - "8000:80"
  db:
    image: mysql:5.7
    ports:
      - "3306:3306"
    environment:
      MYSQL_ROOT_PASSWORD: pass

上記の Docker Compose ファイルでは、Web コンテナーはホスト上にあります。ポート 8000 で実行し、コンテナのポート 80 をホスト ポートにマッピングします。同様に、db コンテナはホストの 3306 ポートで実行され、コンテナの 3306 ポートをホスト ポートにマップします。

Dockerfile を使用してポートを開く

Dockerfile は、Docker イメージを自動的に構築するために使用されるスクリプト ファイルです。 Dockerfile では、開発者は開くポートやその他の関連設定を指定できます。 Dockerfile を使用して Docker イメージを構築すると、Docker は Dockerfile 内の指示を使用してポートを開きます。

以下は、Ubuntu ベースの Nginx Web サーバー イメージを構築し、ポートを開くための単純な Dockerfile です:

FROM ubuntu:18.04
RUN apt-get update && apt-get install nginx -y
EXPOSE 80
CMD ["nginx", "-g", "daemon off;"]

上記の Dockerfile では、EXPOSE ディレクティブを使用して、開いているポートを指定します。は80です。このイメージをビルドすると、アプリケーションはコンテナーのポート 80 で実行されます。

概要

この記事では、Docker コンテナーでポートを開いて管理するいくつかの異なる方法について説明しました。 docker run コマンド、Docker Compose、Dockerfile を使用すると、開発者は必要なポートを簡単に開き、アプリケーションがネットワーク上の他のコンピューターに接続できるようにすることができます。開発者が Docker コンテナでアプリケーションを実行する場合、ポートを正しく開くことが非常に重要です。

以上がDocker でスローガンを開始する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。