ホームページ  >  記事  >  開発ツール  >  docker-composer は nginx+php 環境を迅速に構築します

docker-composer は nginx+php 環境を迅速に構築します

藏色散人
藏色散人転載
2022-01-18 16:09:563501ブラウズ

この記事は、composer のチュートリアル コラムによって提供され、docker-composer を使用して簡単な nginx php 環境を構築する方法を紹介します。必要!

ディレクトリ構造

➜  Study tree
├── conf
├── docker-compose.yaml
├── nginx
│   ├── conf
│   │   └── laravel.conf
│   └── html
│       └── index.php

index.php

<?php
/**
 * Created by OrangBus
 * User email: orangbus40400@gmail.com
 * website: orangbus.cn
 * blog: doc.orangbus.cn
 * github: github.com/orangbus
 */echo phpinfo();

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   php8:9000;
 fastcgi_index  index.php;
 fastcgi_param  SCRIPT_FILENAME  /html$fastcgi_script_name;
 include        fastcgi_params;
 }}

重要な注意事項

fastcgi_pass   php8:9000;

php8: PHP コンテナの名前。複数の PHP バージョンを設定したい場合は、PHP 設定をコピーして、対応する PHP に入力するだけです。コンテナ名

 php8: # php的容器名称
 image: php:8.0-fpm
 restart: always
 volumes:
 - ./nginx/html:/html--------------------------------
 php74: # 对应的nginx配置文件为:fastcgi_pass   php74:9000;
 image: php:8.0-fpm
 restart: always
 volumes:
 - ./nginx/html:/html
fastcgi_param  SCRIPT_FILENAME  /html$fastcgi_script_name;

/html: PHPプロジェクトは[phpコンテナディレクトリ] (赤)

docker-compose

version: '3.5'services:
 nginx:
 image: nginx:latest restart: always ports:
 - 8010:80
 volumes:
 - ./nginx/html/:/usr/share/nginx/html # 注意点一
 - ./nginx/conf/:/etc/nginx/conf.d/ links:
 - php8 php8:
 image: php:8.0-fpm restart: always volumes:
 - ./nginx/html:/html #注意点二
にマッピングされています

注 1:

./nginx/html: このマシン上の php プロジェクトのアドレス

/usr/share/nginx/html: nginx のデフォルトのアクセス アドレス

注 2:

./nginx/html: このマシン上の php プロジェクトのアドレス

/ html: ここのアドレスは、ローカルの php コードを php コンテナにマップするためのものです。通常、nginx (赤) で設定されたアドレスと同じです。

ヒント: 2 つのことに注意してください。赤い領域の関連付け、このような単純な nginx php 関連付け環境が正常に構成されました。

落とし穴ガイド:

-link を使用すると、コンテナに接続するカスタム ポートが無効になります (例:

version: '3.5'services:
 php8:
 image: php:8.0-fpm restart: always volumes:
 - ./nginx/html:/html links: # 如果使用 links ,当我们php程序中填写mysql端口的时候应该是 3306 而不是 3307,但是我们外部是需要用3307端口去连接mysql的
 - mysql mysql:
 image: mysql:latest ports:
 - 3307:3306
)

以上がdocker-composer は nginx+php 環境を迅速に構築しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はlearnku.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。