Docker をアプリケーションのデプロイと管理に使用する方法
Docker は、開発者がアプリケーションをより簡単に構築、デプロイ、管理できるようにするオープン ソースのコンテナ化プラットフォームです。 Docker を使用すると、アプリケーションとそのすべての依存関係を自己完結型コンテナにパッケージ化できるため、アプリケーションをどの環境でも同じように実行できるようになります。この記事では、アプリケーションのデプロイと管理に Docker を使用する方法を紹介し、いくつかの具体的なコード例を示します。
始める前に、まず Docker をインストールする必要があります。 Docker は、さまざまなオペレーティング システム用のインストール パッケージを提供しており、詳細なインストール ガイドが用意されています。オペレーティング システムに応じて対応するインストール方法を選択し、ガイドに従ってインストールしてください。
Docker を使用してアプリケーションをデプロイする前に、まず Docker イメージを構築する必要があります。 Docker イメージは、アプリケーションの実行に必要なすべてのファイルと構成を含む読み取り専用のテンプレートです。
以下は、Docker イメージを構築するためのサンプル Dockerfile です:
FROM python:3.9 WORKDIR /app COPY requirements.txt . RUN pip install --no-cache-dir -r requirements.txt COPY . . CMD ["python", "app.py"]
上記の Dockerfile は、ベース イメージを Python 3.9 として指定し、作業ディレクトリを /app に設定します。次に、requirements.txt をコンテナーのルートにコピーし、すべての依存関係をインストールします。最後に、現在のディレクトリ内のすべてのファイルをコンテナにコピーします。
イメージを構築するには、Dockerfile が含まれるディレクトリで次のコマンドを実行するだけです:
docker build -t myapp .
これにより、Dockerfile の指示に従って myapp という名前のイメージが構築されます。
Docker イメージが構築されたら、それを使用してコンテナを実行できます。コンテナーはイメージに基づいて作成された実行中のインスタンスであり、コンテナー内でアプリケーションを実行できます。
以下は、コンテナーを実行するコマンドの例です:
docker run -d -p 8000:8000 myapp
上記のコマンドは、myapp という名前のイメージをバックグラウンドで実行し、コンテナーの 8000 ポートをホストの 8000 ポートにマップします。
これで、ブラウザから http://localhost:8000 にアクセスしてアプリケーションを表示できるようになります。
Docker は、コンテナを管理するための一連のコマンドとツールを提供します。一般的に使用されるコマンドの一部を次に示します。
docker ps
docker stop CONTAINER_ID
docker start CONTAINER_ID
docker rm CONTAINER_ID
docker logs CONTAINER_ID
docker exec -it CONTAINER_ID /bin/bash
Docker Compose は、複数のコンテナ アプリケーションを定義して実行するためのツールです。 Docker Compose を使用すると、単一の YAML ファイルで複数のコンテナーを定義し、単一のコマンドでこれらのコンテナーを開始、停止、管理できます。
以下は、Docker Compose を使用してアプリケーションをオーケストレーションするサンプル ファイル docker-compose.yml です。
version: '3' services: app: build: . ports: - "8000:8000"
上記の構成では、以前に構築された Docker イメージを使用し、コンテナーの 8000 ポートをホストのポート 8000。
アプリケーションを起動するには、docker-compose.yml ファイルが含まれるディレクトリで次のコマンドを実行するだけです:
docker-compose up -d
これにより、アプリケーションがバックグラウンド モードで起動します。
概要
Docker をアプリケーションのデプロイメントと管理に使用すると、複雑な複数環境のデプロイメントと依存関係の管理を大幅に簡素化できます。 Docker イメージを構築することで、ホスト環境から分離されるという利点を持つ、自己完結型で反復可能な軽量のコンテナーを作成できます。 Docker Compose を通じて、複数のコンテナ アプリケーションを簡単にオーケストレーションすることもできます。この記事で提供されている具体的なコード例が、アプリケーションのデプロイと管理に Docker をより深く理解し、使用するのに役立つことを願っています。
以上がアプリケーションのデプロイと管理に Docker を使用する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。