ホームページ >バックエンド開発 >PHPチュートリアル >Docker Compose、Nginx、MariaDB を使用して PHP アプリケーションのデプロイメントプロセスを自動化する
タイトル: Docker Compose、Nginx、MariaDB を使用した PHP アプリケーションのデプロイメント プロセスの自動化
要約: この記事は、Docker Compose、Nginx、MariaDB の使用方法を紹介することを目的としています。 PHP アプリケーションの展開を自動化します。 Docker Compose を使用してコンテナ化されたアプリケーションを管理し、MariaDB データベースと統合しながら、Nginx をリバース プロキシ サーバーとして管理します。この記事では、読者が自動展開プロセスを実装するのに役立つ具体的なコード例を提供します。
従来の展開方法では、サーバー環境の構成、インストール、管理が非常に面倒になることがあります。 Docker Compose を使用すると、このプロセスが簡素化され、アプリケーションを迅速かつ確実にデプロイできるようになります。
まず、ターゲット サーバーに Docker と Docker Compose をインストールする必要があります。具体的なインストール方法については、Docker 公式ドキュメントを参照してください。
プロジェクトのルート ディレクトリに docker-compose.yaml という名前のファイルを作成します。このファイルは、デプロイするサービスとサービス間の相互依存性を定義します。彼ら。
version: '3' services: nginx: image: nginx:latest ports: - "80:80" volumes: - ./nginx/conf.d:/etc/nginx/conf.d depends_on: - php php: image: php:7.4-fpm volumes: - ./php/app:/var/www/html db: image: mariadb:latest environment: - MYSQL_ROOT_PASSWORD=password - MYSQL_DATABASE=app - MYSQL_USER=app_user - MYSQL_PASSWORD=app_password volumes: - ./db/data:/var/lib/mysql
上記の Docker Compose ファイルは、nginx、php、db の 3 つのサービスを定義しています。 Nginx サービスはリバース プロキシと静的ファイルの提供を担当し、PHP サービスはアプリケーションを実行し、DB サービスは MariaDB データベースです。
プロジェクトのルート ディレクトリに nginx という名前のディレクトリを作成し、このディレクトリに conf.d ディレクトリを作成します。 conf.d ディレクトリに、default.conf という名前のファイルを作成します。これは、Nginx のリバース プロキシと静的ファイル サービスを定義します。
server { listen 80; server_name localhost; root /var/www/html/public; location / { try_files $uri /index.php$is_args$args; } location ~ .php$ { fastcgi_pass php:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } }
上記の Nginx 構成ファイルの鍵は、リクエストを PHP コンテナーの 9000 ポートに転送することで、PHP コードの解析と実行を可能にすることです。
プロジェクトのルート ディレクトリに php という名前のディレクトリを作成し、このディレクトリに PHP アプリケーションを書き込みます。
自動展開プロセスの準備がすべて完了したので、次のコマンドを使用してアプリケーションを開始できます。
docker-compose up -d
このコマンドは、docker-compose.yaml ファイルから構成を読み取り、必要な Docker コンテナーを自動的に作成して実行します。
ブラウザにサーバーの IP アドレスまたはドメイン名を入力すると、アプリケーションにアクセスできます。
この記事では、Docker Compose、Nginx、MariaDB を使用して PHP アプリケーションの自動デプロイメントを実装する方法について詳しく説明します。 Docker Compose を使用してコンテナ化されたアプリケーションを管理し、Nginx をリバース プロキシ サーバーとして使用して MariaDB データベースと統合します。具体的なコード例を通じて、読者は自動展開プロセスをより深く理解し、実装することができます。この自動展開ソリューションは、開発効率を向上させ、システムの構成と管理の難しさを軽減することができ、最新のソフトウェア開発の重要な部分です。
以上がDocker Compose、Nginx、MariaDB を使用して PHP アプリケーションのデプロイメントプロセスを自動化するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。