Docker Swarm を使用してクラスターのパッケージ化と PHP プログラムのデプロイメントを行うにはどうすればよいですか?
クラウド コンピューティングとコンテナ化テクノロジの発展により、Docker は最も人気のあるコンテナ化プラットフォームの 1 つになりました。 Docker Swarm は、Docker 独自のコンテナ オーケストレーション ツールとして、Docker クラスターの構築と管理に使用できます。この記事では、Docker Swarm を使用して PHP プログラムのクラスター パッケージ化デプロイメントを行い、高可用性と負荷分散を実現する方法を説明します。
まず、Docker と Docker Swarm が正しくインストールされていることを確認する必要があります。公式ドキュメントの指示に従ってインストールおよび設定できます。
次に、例として簡単な PHP プログラムを作成します。プロジェクト ディレクトリで、index.php
というファイルを作成し、次のコードを追加します。
<?php echo "Hello, Docker Swarm!"; ?>
次に、ビルドに使用する Dockerfile
を作成する必要があります。ドッカーイメージ。プロジェクト ディレクトリに Dockerfile
という名前のファイルを作成し、次の内容を追加します。
FROM php:7.4-apache COPY . /var/www/html EXPOSE 80
上記の Dockerfile
の内容は、PHP の公式イメージを使用することを意味します, そして、コードをミラーの /var/www/html
ディレクトリにコピーします。次に、ポート 80 を外部に開放します。
次に、イメージを構築する必要があります。プロジェクト ディレクトリでターミナルを開き、次のコマンドを実行します。
docker build -t my-php-app .
このコマンドは、現在のディレクトリに my-php-app
という名前のイメージを構築します。
これで、Docker Swarm を使用してクラスターを作成できるようになりました。まず、Swarm を初期化する必要があります。ターミナルで次のコマンドを実行します:
docker swarm init
Swarm が正常に初期化されたら、次のコマンドを使用してサービスを作成できます:
docker service create --name my-php-service -p 80:80 my-php-app
上記のコマンドは、my- という名前のサービスを作成します。 php-service
サービスを作成し、コンテナのポート 80 をホストのポート 80 にマップします。
これで、ブラウザで http://localhost
にアクセスできるようになり、出力 Hello, Docker Swarm!
が表示されるはずです。これは、PHP プログラムがクラスターに正常にデプロイされたことを示しています。
次に、サービスを拡張することでコンテナの数を増やしていきます。たとえば、次のコマンドを実行してコンテナの数を 3 に拡張します。
docker service scale my-php-service=3
これで、次のコマンドを使用して、実行中のすべてのサービスと対応するコンテナを表示できます。
docker service ls
このコマンドは、現在のクラスターで実行されているサービスのリストを表示します。
アプリケーションを更新する場合は、ローカル コードを変更してイメージを再構築し、次のコマンドを使用してサービスを更新します。
docker service update --image my-php-app my-php-service
最後に、サービスを削除する場合
docker service rm my-php-service docker swarm leave --force
概要:
この記事では、クラスターのパッケージ化と PHP プログラムのデプロイに Docker Swarm を使用する方法を学びました。簡単な PHP プログラムを作成し、Docker を使用してイメージを構築しました。次に、Docker Swarm を使用してクラスターを初期化し、サービスを作成し、サービスを拡張してコンテナーの数を増やしました。最後に、サービスを更新し、クラスターを削除する方法も学びました。
この記事が、PHP プログラム クラスターのパッケージ化とデプロイに Docker Swarm を理解し、使用するのに役立つことを願っています。 Docker Swarm の使用が成功することを祈っています。
以上がDocker Swarm をクラスターのパッケージ化と PHP プログラムのデプロイメントに使用するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。