ホームページ >バックエンド開発 >PHPチュートリアル >Docker Compose、Nginx、MariaDB を使用した PHP アプリケーションのクロスプラットフォーム展開

Docker Compose、Nginx、MariaDB を使用した PHP アプリケーションのクロスプラットフォーム展開

WBOY
WBOYオリジナル
2023-10-12 15:21:161007ブラウズ

通过Docker Compose、Nginx和MariaDB实现PHP应用程序的跨平台部署

Docker Compose、Nginx、MariaDB を介した PHP アプリケーションのクロスプラットフォーム展開には、特定のコード例が必要です

クラウド コンピューティングとコンテナ化テクノロジの発展により、クロスプラットフォーム展開が可能になりましたプラットフォームの展開が大きな話題になっています。この記事では、Docker Compose、Nginx、MariaDB を使用して PHP アプリケーションのクロスプラットフォーム デプロイメントを実現する方法と、具体的なコード例を紹介します。

Docker Compose は、複数コンテナーの Docker アプリケーションを定義および実行するためのツールであり、シンプルな YAML ファイルを使用して、アプリケーションのサービス、ネットワーク、およびストレージの側面を構成します。 Nginx は、複数のコンテナ化された PHP アプリケーションにトラフィックを分散するために使用できる高性能 Web サーバーおよびリバース プロキシ サーバーです。 MariaDB は、アプリケーション データの保存に使用できるオープン ソースのリレーショナル データベース管理システムです。

まず、Docker Compose 構成ファイルを作成して、PHP アプリケーションのサービスを定義する必要があります。簡単な例を次に示します。

version: '3'

services:
  web:
    build:
      context: .
      dockerfile: Dockerfile
    ports:
      - 80:80
    depends_on:
      - db

  db:
    image: mariadb
    environment:
      - MYSQL_ROOT_PASSWORD=123456
    volumes:
      - db_data:/var/lib/mysql

volumes:
  db_data:

上記の構成ファイルでは、web と db という 2 つのサービスを定義しました。 Web サービスは PHP アプリケーションであり、Dockerfile と呼ばれるファイルを使用してイメージを構築します。アプリケーションが外部からアクセスできるように、コンテナーのポート 80 をホストのポート 80 にマップします。 db サービスは MariaDB の公式イメージを使用し、root パスワードとデータ量を設定します。

次に、PHP アプリケーションのイメージを構築するための Dockerfile を作成する必要があります。簡単な例を次に示します。

FROM php:7.4-fpm

WORKDIR /app

COPY . /app

RUN apt-get update 
    && apt-get install -y nginx 
    && docker-php-ext-install pdo_mysql

CMD service nginx start && php-fpm

EXPOSE 80

上記の Dockerfile では、公式の php:7.4-fpm イメージに基づいてイメージを構築します。作業ディレクトリを /app に設定し、現在のディレクトリ内のすべてのファイルをコンテナの /app ディレクトリにコピーします。次に、apt-get コマンドを使用して nginx と pdo_mysql 拡張機能をインストールしました。最後に、nginxとphp-fpmの起動、ポート80の開放など、コンテナ起動時のコマンドを設定します。

上記の構成が完了したら、次のコマンドを使用して PHP アプリケーションを起動できます:

docker-compose up -d

このコマンドは、Docker Compose 構成ファイル コンテナーに基づいて PHP アプリケーションを作成し、起動します。 -d パラメーターは、コンテナーをバックグラウンドで実行することを示します。

コンテナが正常に起動したら、ブラウザから http://localhost にアクセスして PHP アプリケーションを表示できます。 Nginx はトラフィックを PHP アプリケーション コンテナに分散し、アプリケーションは MariaDB データベースに接続してデータを取得して保存します。

要約すると、PHP アプリケーションのクロスプラットフォーム デプロイメントは、Docker Compose、Nginx、MariaDB を使用して簡単に実現できます。 docker-compose.yml ファイルはアプリケーションのサービスを定義でき、Dockerfile はアプリケーションのイメージを構築できます。 Docker Compose コマンドを使用すると、アプリケーションのコンテナを簡単に起動して管理できます。このクロスプラットフォーム展開ソリューションは、シンプルかつ効率的であるだけでなく、優れた拡張性と保守性も備えています。

上記は、Docker Compose、Nginx、MariaDB を使用して PHP アプリケーションのクロスプラットフォーム デプロイメントを実装するための具体的なコード例です。お役に立てれば!

以上がDocker Compose、Nginx、MariaDB を使用した PHP アプリケーションのクロスプラットフォーム展開の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。