タイトル: Docker Compose、Nginx、MariaDB を使用して PHP アプリケーションのデプロイメントを加速する
はじめに: クラウド コンピューティングとコンテナ テクノロジーの広範な適用により、ますます多くの開発者は、アプリケーションを迅速に展開して拡張する方法に注目し始めています。 PHP 開発では、Docker Compose、Nginx、MariaDB を使用すると、アプリケーションのデプロイメントを大幅に高速化できます。この記事では、これらのツールを使用して、PHP アプリケーションの開発環境を迅速に構築および管理する方法を紹介します。
1. Docker Compose の概要
Docker Compose は、複数コンテナーの Docker アプリケーションを定義および実行するためのツールです。すべてのコンテナーの設定を管理する構成ファイルを使用すると、Docker Compose を使用してアプリケーション全体を一度に定義、実行、停止できます。 Docker Compose を使用すると、デプロイメントプロセスが大幅に簡素化され、コンテナーのオーケストレーションとスケーリング機能が提供されます。
2. Web サーバーとしての Nginx
Nginx は、高性能のオープンソース Web サーバーおよびリバース プロキシ サーバーです。負荷分散、容量スケーリング、静的コンテンツ キャッシュなどの機能を提供しながら、多数の同時接続を処理できます。 PHP アプリケーションでは、Nginx を Web サーバーとして使用すると、アプリケーションのパフォーマンスと同時処理能力を向上させることができます。
以下は、Nginx と PHP-FPM (PHP FastCGI Process Manager) を使用した簡単な Docker Compose 構成例です。
version: "3.7" services: web: image: nginx:latest ports: - 80:80 volumes: - ./nginx.conf:/etc/nginx/nginx.conf - ./code:/var/www/html php: image: php:latest volumes: - ./code:/var/www/html
上記の構成では、web と php の 2 つのサービスを定義しました。 Web サービスは Nginx ミラーリングを使用し、コンテナーのポート 80 をホストのポート 80 にマップします。同時に、Nginx 構成ファイル nginx.conf と PHP コードをホスト マシンの指定されたディレクトリに保存します。 php サービスは PHP イメージを使用し、コード ディレクトリをコンテナの /var/www/html ディレクトリにマウントします。
3. MariaDB をデータベースとして使用する
MariaDB は人気のあるリレーショナル データベース管理システムで、MySQL の 1 つであり、高パフォーマンス、高可用性、強力な機能を提供します。 PHP アプリケーションでは、MariaDB をデータベースとして使用すると、データ アクセス速度とデータ管理機能が向上します。
以下は、MariaDB と上記の Nginx および PHP-FPM を使用した簡単な Docker Compose 構成例です。
version: "3.7" services: web: image: nginx:latest ports: - 80:80 volumes: - ./nginx.conf:/etc/nginx/nginx.conf - ./code:/var/www/html php: image: php:latest volumes: - ./code:/var/www/html db: image: mariadb:latest environment: - MYSQL_ROOT_PASSWORD=yourpassword volumes: - ./data:/var/lib/mysql
上記の構成では、MariaDB を使用して新しい db サービスを追加しました。ミラーリングして、root ユーザーのパスワードを設定します。同時に、データベース データをコンテナの /var/lib/mysql ディレクトリに保存します。
4. デプロイメントと管理に Docker Compose を使用する
上記の Docker Compose 構成を行った後、次のコマンドを使用して、ワンクリックで PHP アプリケーションをデプロイおよび管理できます:
コンテナのビルドと起動: docker-compose.yml ファイルが含まれるディレクトリで次のコマンドを実行して、すべてのコンテナをビルドして起動します。
docker-compose up -d
コンテナの停止: 次のコマンドを実行すると、すべてのコンテナが停止します。
docker-compose down
拡張サービス: Web サービスまたは PHP サービスを拡張する必要がある場合は、docker-compose.yml ファイル内の対応するサービスのコピー数を調整するだけです。
version: "3.7" services: web: image: nginx:latest ports: - 80:80 volumes: - ./nginx.conf:/etc/nginx/nginx.conf - ./code:/var/www/html scale: 3 php: image: php:latest volumes: - ./code:/var/www/html scale: 3
次に、以下のコマンドを実行して容量を拡張します。
docker-compose up -d --scale web=3 --scale php=3
Docker Compose、Nginx、MariaDB を使用することで、PHP アプリケーションの開発環境を迅速に構築および管理でき、簡単にデプロイおよび拡張できます。このアプローチにより、アプリケーションの展開が高速化されるだけでなく、パフォーマンスとスケーラビリティも向上します。
以上がDocker Compose、Nginx、MariaDB で PHP アプリケーションのデプロイメントを高速化の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。