ホームページ バックエンド開発 PHPの問題 DockerでPHPプロジェクトをインストールする方法

DockerでPHPプロジェクトをインストールする方法

Dec 21, 2021 am 10:27 AM
docker php

docker を使用して php プロジェクトをインストールする方法: 1. 必要なイメージ ファイルをダウンロードします; 2. nginx/conf ディレクトリに nginx 構成ファイル php.conf を準備します; 3. docker-compose.yml オーケストレーション ファイルを作成します; 4. 拡張機能をインストールします。

DockerでPHPプロジェクトをインストールする方法

#この記事の動作環境: macOS10.15 システム、PHP5.6 バージョン、macbook pro 2020 パソコン。

Docker を使用して php プロジェクトをインストールするにはどうすればよいですか?

Docker を使用して PHP 開発環境をすばやく構築する

最近同僚がやって来て、私が長々と書いた PHP Web サイトに何か追加してほしいと言いました。当時は

xampp を使用して構築されたローカル開発環境 Function が開発されていましたが、現在私のラップトップが更新され、当時の開発環境はありません。コンピュータに無駄なソフトウェアをインストールしないという原則に従って、Docker を使用してローカル開発環境を構築できないか考えました。そこで、この記事では、ローカルの PHP ベースの開発環境を迅速に構築する方法を紹介します。困っている学生の参考のために Docker 上で使用してください。

ディレクトリ

    事前準備
  • 配置ファイル
  • ランニングエフェクト
  • インストール拡張機能
  • 参考資料
この記事は、

5.6-fpm-alpine3.8 および ngingx をベースにして、Mac 上で PHP 開発環境を構築します。

事前準備

最初に必要なイメージ ファイルをダウンロードします

$ docker pull php:5.6-fpm-alpine3.8
$ docker pull nginx
$ docker pull mysql
ログイン後にコピー
ユーザーは Hub.docker.com にアクセスし、PHP を検索して自分自身を見つける必要がありますタグ経由 インストールしたいバージョンは、プロジェクトの開発期間が長く、最新の PHP をサポートできないため、バージョン 5.6 をインストールしました。

作業ディレクトリ (

lnmp など) を準備し、作業ディレクトリ内に Web サイトのルート ディレクトリ、Nginx 設定ファイル ディレクトリ、Nginx ログ ディレクトリを準備する必要があります。

$ mkdir lnmp
$ cd lnmp
$ mkdir -p nginx/www nginx/logs nginx/conf
ログイン後にコピー
新しく作成した www ディレクトリに新しいindex.php ファイルを作成し、PHP 環境が正常に確立されているかどうかを確認します。

<?php
  phpinfo();
?>
ログイン後にコピー

nginx 設定ファイル php.conf を nginx/conf ディレクトリに準備します。

server {
	listen	80;
	server_name	localhost;

	location / {
		root	/usr/share/nginx/html;
		index	index.html index.htm index.php;
	}

	error_page	500 502 503 504	/50x.html;
	location = /50x.html {
		root	/usr/share/nginx/html;
	}

	location ~ \.php$ {
		fastcgi_pass	php:9000;
		fastcgi_index	index.php;
		fastcgi_param	SCRIPT_FILENAME	/www/$fastcgi_script_name;
		include		fastcgi_params;
	}
}
ログイン後にコピー
配置ファイル

作業ディレクトリに

docker-compose.yml配置ファイルを作成します。

docker-compose の詳細な紹介については、以前の記事「Docker-compose の使用方法の紹介」を参照してください。

version: "2.1"
services:
    nginx:
        image: nginx
        ports:
            - "80:80"
        volumes: 
            - ~/Projects/sh-valley/docker-conf/lnmp/nginx/www:/usr/share/nginx/html
            - ~/Projects/sh-valley/docker-conf/lnmp/nginx/conf:/etc/nginx/conf.d
            - ~/Projects/sh-valley/docker-conf/lnmp/nginx/logs:/var/log/nginx
        networks:
            - lnmp-network
    php:
        image: php:5.6-fpm-alpine3.8
        volumes:
            - ~/Projects/sh-valley/docker-conf/lnmp/nginx/www:/www
        networks:
            - lnmp-network
    mysql:
        image: mysql
        ports:
            - "3306:3306"
        environment:
            - MYSQL_ROOT_PASSWORD=123456
        networks:
            - lnmp-network
networks: 
    lnmp-network:
ログイン後にコピー
この時点で、すべての準備作業が完了したので、すぐに効果の確認を開始できます。

実行中の効果

$ docker-compose up -d
Creating network "lnmp_php-network" with the default driver
Creating lnmp_nginx_1 ... done
Creating lnmp_php_1   ... done
ログイン後にコピー

見慣れた

phpinfoインターフェイスがすぐに表示されます。

拡張機能のインストール

Default

php画像で提供されている拡張機能は比較的少数で、mysql、gd2 などはありません。 およびその他の一般的に使用される拡張機能があるため、拡張機能を自分でインストールして有効にする必要があります。

まず、

php コンテナに入り、php -m コマンドを使用して、ローカルで利用可能な拡張機能を確認します。

docker-php-ext-install コマンドを使用して拡張機能をインストールできます。

$ docker-php-ext-install mysql
ログイン後にコピー
拡張機能をインストールしたら、

php.ini で有効にできます。 phpinfo から、デフォルトの php.ini がコンテナ環境で有効になっていないことがわかります。 .ini-developmentphp.ini にコピーされます。 php.ini の構成を変更して、必要な拡張機能を有効にします。以下に、参考までにいくつかの拡張機能のインストール コマンドを示します。 docker-php-ext-source

コンテナ内に
    /usr/src/php
  • ディレクトリを作成しますdocker -php-ext-enablePHP 拡張機能を有効にして、
  • php.ini
  • docker-php-ext-installinstall を手動で編集するプロセスを省略します。 PHP 拡張機能を有効にする
  • ##docker-php-ext-configure は、docker-php-ext-install
  • と組み合わせて使用​​されることが多く、拡張子
  • 推奨学習: 「PHP ビデオ チュートリアル

以上がDockerでPHPプロジェクトをインストールする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Dockerによってコンテナを出る方法 Dockerによってコンテナを出る方法 Apr 15, 2025 pm 12:15 PM

Dockerコンテナを終了する4つの方法:コンテナ端子でCtrl Dを使用するコンテナターミナルに出口コマンドを入力しますDocker stop&lt; container_name&gt;コマンドを使用するDocker Kill&lt; container_name&gt;ホストターミナルのコマンド(フォース出口)

PHPおよびPython:さまざまなパラダイムが説明されています PHPおよびPython:さまざまなパラダイムが説明されています Apr 18, 2025 am 12:26 AM

PHPは主に手順プログラミングですが、オブジェクト指向プログラミング(OOP)もサポートしています。 Pythonは、OOP、機能、手続き上のプログラミングなど、さまざまなパラダイムをサポートしています。 PHPはWeb開発に適しており、Pythonはデータ分析や機械学習などのさまざまなアプリケーションに適しています。

Dockerのファイルを外部にコピーする方法 Dockerのファイルを外部にコピーする方法 Apr 15, 2025 pm 12:12 PM

Dockerの外部ホストにファイルをコピーする方法:Docker CPコマンドを使用:Docker CP [Options]&lt; Container Path&gt; &lt;ホストパス&gt;。データボリュームの使用:ホストにディレクトリを作成し、-vパラメーターを使用してコンテナを作成するときにディレクトリをコンテナにマウントして、双方向ファイルの同期を実現します。

Dockerの画像を更新する方法 Dockerの画像を更新する方法 Apr 15, 2025 pm 12:03 PM

Docker画像を更新する手順は次のとおりです。最新の画像タグ新しい画像をプルする新しい画像は、特定のタグのために古い画像を削除します(オプション)コンテナを再起動します(必要に応じて)

Dockerを再起動する方法 Dockerを再起動する方法 Apr 15, 2025 pm 12:06 PM

Dockerコンテナを再起動する方法:コンテナID(Docker PS)を取得します。コンテナを停止します(docker stop&lt; container_id&gt;);コンテナを起動します(docker start&lt; container_id&gt;);再起動が成功していることを確認します(Docker PS)。その他の方法:Docker Compose(Docker-Compose Restart)またはDocker API(Dockerドキュメントを参照)。

Dockerコンテナの名前を確認する方法 Dockerコンテナの名前を確認する方法 Apr 15, 2025 pm 12:21 PM

すべてのコンテナ(Docker PS)をリストする手順に従って、Dockerコンテナ名を照会できます。コンテナリストをフィルタリングします(GREPコマンドを使用)。コンテナ名(「名前」列にあります)を取得します。

DockerによるMySQLを開始する方法 DockerによるMySQLを開始する方法 Apr 15, 2025 pm 12:09 PM

DockerでMySQLを起動するプロセスは、次の手順で構成されています。MySQLイメージをプルしてコンテナを作成および起動し、ルートユーザーパスワードを設定し、ポート検証接続をマップしてデータベースを作成し、ユーザーはすべての権限をデータベースに付与します。

Dockerプロセスを表示する方法 Dockerプロセスを表示する方法 Apr 15, 2025 am 11:48 AM

Dockerプロセス表示方法:1。DockerCLIコマンド:Docker PS; 2。SystemDCLIコマンド:SystemCTL Status Docker; 3。CLIコマンドを作成するDocker:Docker-Compose PS。 4。プロセスエクスプローラー(Windows); 5。 /procディレクトリ(Linux)。

See all articles