今日のWeb開発では、プラグインシステムの使用がPHPアプリケーションの機能を拡張する重要な方法となっています。コンテナ化された展開により、スケーラブルな開発環境を迅速かつ柔軟に構築できます。この記事では、Docker Composeを使用してNginxとMariadBを組み合わせて、プラグイン拡張機能をサポートするPHP環境を構築する方法を示します。
まず、DockerとDocker Composeがシステムに正しくインストールされていることを確認してください。インストールが完了したら、次のコマンドで確認してください。
Docker-バージョン Docker-Compose-バージョン
Project Root DirectoryにDocker-Compose.ymlファイルを作成し、以下を追加します。
バージョン: '3' サービス: ウェブ: 確立するてる: コンテクスト: 。 dockerfile:dockerfile ボリューム: - 。:/var/www/html ポート: -8080:80 リンク: -DB DB: 画像:Mariadb 環境: mysql_root_password:secret
この構成は、PHPランタイム環境(Web)とデータベースサービス(DB)の2つのサービスを定義します。 PHPサービスは、Nginxを介して外側にアクセスインターフェイスを提供します。
新しいdockerfileファイルを作成し、以下を書きます。
PHPから:7.4-fpm docker-php-ext-install pdo_mysqlを実行します
この画像はPHP 7.4を使用しており、 PDO_MYSQL拡張機能を事前にインストールしています。プロジェクトのニーズに応じて、さらにPHPプラグインを追加できます。
次のコンテンツを使用して、Project Directoryにnginx構成ファイルdefault.confを作成します。
サーバー{ 匂いく80; index index.php index.html; server_name localhost; root/var/www/html; 位置 / { try_files $ uri $ uri / /index.php?$ args; } 場所〜.php $ { fastcgi_paramsを含むめる; fastcgi_pass web:9000; FASTCGI_PARAM Script_fileName $ document_root $ fastcgi_script_name; fastcgi_param path_info $ fastcgi_path_info; } }
この構成により、基本的な要求の転送とPHP解析ロジックを実装し、PHPファイルにアクセスするときにPHP-FPMコンテナが処理されるようにします。
プロジェクトルートディレクトリで次のコマンドを実行します。
docker -compose up -d
このコマンドは、構成に基づいて必要なコンテナを構築および起動します。
任意のグラフィカルデータベースツールを使用して、dbeaver、navicat、phpmyadminなどのmariadbに接続できます。接続情報は次のとおりです。
ホスト:LocalHost ポート:3306 ユーザー名前:root パスワード:秘密
PHPコードを/var/www/htmlディレクトリに記述すると、すべてのファイルがnginxによって自動的にロードされ、処理されます。この環境では、プラグインの機能をテストし、データベース接続を処理し、REST APIを構築するなどを行うことができます。
Docker ComposeのNginxとMariadbを組み合わせることで、軽量で効率的なPHP開発環境を構築できます。これは、迅速な反復と強力なプラグイン拡張機能を必要とする開発シナリオに特に適しています。コンテナの柔軟性により、開発者は、基礎となる操作環境を積極的に構成することなく、ビジネスロジックとプラグイン機能の実装にもっと集中できます。
このソリューションは高度にカスタマイズ可能であり、プロジェクトの要件に応じて拡張および最適化でき、ローカル開発テストとチームの共同開発プロセスに適しています。