Docker Compose、Nginx、MariaDB 用のすぐに使えるソリューション: PHP 環境を迅速にセットアップ
概要:
開発とPHP アプリケーションのデプロイメント プログラミング時には、信頼性が高く管理しやすい環境を構築することが重要です。 Docker Compose、Nginx、MariaDB は、PHP 環境を迅速に構築するためのソリューションを提供します。この記事では、Docker Compose を使用してコンテナーを構成および実行し、Web サーバーとして Nginx を使用し、データベースとして MariaDB を使用し、PHP 環境を迅速に構築する方法を紹介します。
1. Docker と Docker Compose をインストールする:
まず、Docker と Docker Compose をローカル マシンにインストールする必要があります。さまざまなオペレーティング システムのインストール ガイドは、Docker の公式 Web サイトで参照できます。インストールが完了したら、インストールが成功したかどうかを確認し、ターミナルまたはコマンド プロンプトで次のコマンドを入力します:
docker --version docker-compose --version
バージョン番号が正しく表示できる場合は、Docker と Docker Compose がインストールされていることを意味します。正常にインストールされました。
2. Docker Compose ファイルの作成:
次に、docker-compose.yml という名前のファイルを作成し、その中でサービスとコンテナーの構成を定義する必要があります。
version: '3' services: nginx: build: context: . dockerfile: nginx.dockerfile ports: - 80:80 depends_on: - php php: build: context: . dockerfile: php.dockerfile volumes: - ./src:/var/www/html mariadb: image: mariadb environment: - MYSQL_ROOT_PASSWORD=secret
説明:
3. Dockerfile と構成ファイルを作成する:
次に、イメージのビルド時に必要な構成と依存関係を提供するために、Dockerfile と構成ファイルを作成する必要があります。
FROM nginx COPY nginx.conf /etc/nginx/nginx.conf COPY default.conf /etc/nginx/conf.d/default.conf
説明: 公式 Nginx イメージから新しいイメージを構築し、ローカルの nginx.conf ファイルとdefault.conf ファイルをコンテナの対応する場所。
FROM php:7.4-fpm RUN apt-get update && apt-get install -y zlib1g-dev libzip-dev && docker-php-ext-install zip pdo_mysql COPY php.ini /usr/local/etc/php/conf.d/custom.ini
説明: 公式 PHP イメージから新しいイメージをビルドし、apt-get コマンドを使用して必要な依存関係をインストールし、docker に渡します。 -php-ext-install コマンドは、zip 拡張機能と pdo_mysql 拡張機能をインストールします。最後に、ローカルの php.ini ファイルをコンテナーにコピーします。
user nginx; worker_processes auto; error_log /var/log/nginx/error.log warn; pid /var/run/nginx.pid; events { worker_connections 1024; } http { include /etc/nginx/mime.types; default_type application/octet-stream; log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; access_log /var/log/nginx/access.log main; sendfile on; keepalive_timeout 65; server { listen 80; server_name localhost; root /var/www/html; index index.php index.html; location / { try_files $uri $uri/ /index.php?$query_string; } location ~ .php$ { fastcgi_pass php:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } } }
説明: これは Nginx 構成ファイルです。デフォルトのログ パス、イベント設定、http 設定、およびリクエストを処理し、PHP 処理を PHP コンテナに引き渡すための基本的なサーバー ブロックを使用して構成されています。
server { location / { try_files $uri $uri/ /index.php?$query_string; } location ~ .php$ { fastcgi_pass php:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } }
説明: これは、Nginx のデフォルト設定ファイルです。 nginx.conf ファイルのサーバー ブロック設定と同じです。
4. コンテナーの構築と実行を開始します:
すべての構成ファイルを設定したら、コンテナーの構築と実行を開始できます。ターミナルまたはコマンド プロンプトで、docker-compose.yml ファイルが配置されているディレクトリに移動し、次のコマンドを実行します。
docker-compose up --build
このコマンドにより、イメージの構築とコンテナーの実行のプロセスが開始されます。 。完了すると、コンテナが実行され、http://localhost 経由で PHP アプリケーションにアクセスできることがわかります。
コンテナをバックグラウンドで実行する必要がある場合は、次のコマンドを使用できます:
docker-compose up -d --build
このコマンドはコンテナをデーモン モードで実行します。
概要:
Docker Compose、Nginx、MariaDB のすぐに使えるソリューションを利用して、PHP 環境を迅速に構築および管理できます。 Docker の移植性とコンテナ化の利点により、PHP アプリケーションの開発とデプロイがより簡単かつ信頼性の高いものになります。この記事がお役に立てば幸いです。コード例の詳細については、この記事で説明されている設定ファイルを参照してください。
以上がDocker Compose、Nginx、MariaDB 用のすぐに使えるソリューション: PHP 環境を迅速にセットアップの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。