ホームページ > テクノロジー周辺機器 > IT業界 > Dockerで最新のPHP開発環境を設定します

Dockerで最新のPHP開発環境を設定します

Lisa Kudrow
リリース: 2025-02-14 09:43:11
オリジナル
886 人が閲覧しました

このチュートリアルは、現在のベストプラクティスであるDockerを使用してPHP開発環境を設定することをガイドします。 PHP開発環境の進化をカバーし、古い方法よりもDockerの利点を強調します。 履歴をスキップしたい場合は、構成手順にジャンプしてください。

Setting Up a Modern PHP Development Environment with Docker

PHP開発環境の簡単な歴史

Web Developmentの急速なペースには、現代のアプローチが必要です。 時代遅れのチュートリアルがたくさんあります。 進化を確認しましょう:

  1. 手動インストール:

    Apache、PHP、およびMySQLを手動でインストールする骨の折れるプロセスは、過去に一般的でした。これには重要な専門知識が必要であり、時間がかかりました

  2. 事前に設定されたパッケージ(XAMPP、WAMP):
  3. これらのパッケージは簡素化されましたが、開発と生産環境(ソフトウェアの異なるバージョン、OSの違い)の間の矛盾は課題を引き起こしました。 多くの開発者はまだこれらを使用していますが、今度はアップグレードする時が来ました。

    仮想マシン(vagrant):
  4. 仮想マシンは一貫した開発環境と生産環境を提供しましたが、管理するためのリソース集中的で複雑でした。
  5. docker:

    dockerは、オーバーヘッドなしで仮想マシンの利点を提供します。アプリケーションとそのすべての依存関係をコンテナにパッケージ化し、環境全体で一貫性を確保します。
  6. dockerの利点に対するdockerの利点:

  7. Dockerは、リソースの消費と同期のVagrantの問題を回避します。これにより、異なる構成(Apache、Nginx、さまざまなPHPバージョン)を備えた複数のWebサイトが同時に実行され、それぞれが独自のコンテナ内で分離されます。 ウェブサイトの移動は、単一のフォルダーをコピーするのと同じくらい簡単です。

docker環境のセットアップ

Setting Up a Modern PHP Development Environment with Docker前提条件:

Dockerをダウンロードしてインストールします。 Linuxで、配布のパッケージマネージャーを介しておよび

をインストールします。 ユーザーを

グループに追加し、Dockerサービスを開始/有効にする必要がある場合があります。 WindowsおよびMacOSインストーラーはこれを自動的に処理します。既存のWebサーバー(Apache、nginxなど)またはMySQLインスタンスを進める前に停止します。 configuration(docker-compose.yml):

dockerプロジェクトフォルダーとdocker-composeファイルを作成します:docker

nginx configuration(nginx.conf):

createdocker-compose.yml

version: '3'
services:
  web:
    image: nginx:latest
    ports:
      - "80:80"
    volumes:
      - ./nginx.conf:/etc/nginx/conf.d/nginx.conf
      - ./app:/app
  php:
    build:
      context: .
      dockerfile: PHP.Dockerfile
    volumes:
      - ./app:/app
  mysql:
    image: mariadb:latest
    environment:
      MYSQL_ROOT_PASSWORD: 'secret'
      MYSQL_USER: 'tutorial'
      MYSQL_PASSWORD: 'secret'
      MYSQL_DATABASE: 'tutorial'
    volumes:
      - mysqldata:/var/lib/mysql
    ports:
      - 3306:3306
volumes:
  mysqldata: {}
ログイン後にコピー
ログイン後にコピー

php dockerfile(php.dockerfile):

createnginx.conf

version: '3'
services:
  web:
    image: nginx:latest
    ports:
      - "80:80"
    volumes:
      - ./nginx.conf:/etc/nginx/conf.d/nginx.conf
      - ./app:/app
  php:
    build:
      context: .
      dockerfile: PHP.Dockerfile
    volumes:
      - ./app:/app
  mysql:
    image: mariadb:latest
    environment:
      MYSQL_ROOT_PASSWORD: 'secret'
      MYSQL_USER: 'tutorial'
      MYSQL_PASSWORD: 'secret'
      MYSQL_DATABASE: 'tutorial'
    volumes:
      - mysqldata:/var/lib/mysql
    ports:
      - 3306:3306
volumes:
  mysqldata: {}
ログイン後にコピー
ログイン後にコピー

サービスの実行:

プロジェクトディレクトリで端末を開き、実行しますdocker-compose up。 これにより、Nginx、Php、およびMariadbが開始されます。 http://127.0.0.1でサイトにアクセスします。 「こんにちは、世界!」テストページapp/public/index.htmlセットアップを確認します。 phpinfo()app/public/index.phpスクリプトでPHP機能を確認します。 MySQL Workbenchのようなクライアントを使用してMySQLに接続します

Setting Up a Modern PHP Development Environment with DockerSetting Up a Modern PHP Development Environment with Docker

の展開:プロジェクトファイル(docker-compose.yml、およびnginx.confを含む)をサーバーにアップロードし、シームレスな展開のためにPHP.Dockerfileを実行するだけです。 docker-compose up -d

FAQS:

(提供されたFAQはすでに十分に構造化されており、直接含めることができます。) この改訂された出力は、元の画像の場所とフォーマットを維持しながら、テキストをrephraseして明確さと流れを改善し、盗作を避けます。

以上がDockerで最新のPHP開発環境を設定しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート