Rumah >alat pembangunan >composer >docker-composer dengan cepat membina persekitaran php nginx

docker-composer dengan cepat membina persekitaran php nginx

藏色散人
藏色散人ke hadapan
2022-01-18 16:09:563713semak imbas

Artikel ini ditulis oleh komposer ruangan tutorial untuk memperkenalkan cara menggunakan docker-composer untuk membina persekitaran php nginx yang mudah saya harap ia akan membantu rakan-rakan yang memerlukan!

Struktur direktori

➜  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;
 }}

Kata kunci

fastcgi_pass   php8:9000;

php8: Nama bekas php Jika anda ingin mengkonfigurasi berbilang versi php, anda hanya perlu menyalin php konfigurasi. Cuma isikan nama bekas php yang sepadan

 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: Projek php dipetakan ke [php container directory] (merah)

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 #注意点二

Nota satu:

./nginx/html: alamat projek php anda pada mesin ini

/usr/share/nginx/html: alamat akses lalai nginx

Nota 2:

./nginx/html : Alamat projek PHP tempatan anda

/html: Alamat di sini memetakan kod PHP tempatan anda pada bekas PHP secara amnya sama dengan alamat yang dikonfigurasikan oleh nginx anda (Merah)

Petua: Sila beri perhatian kepada hubungan antara dua kawasan merah, supaya persekitaran yang berkaitan dengan php nginx mudah dikonfigurasikan dengan jayanya.

Panduan perangkap:

Apabila menggunakan -link, port tersuai yang menyambungkan bekas akan menjadi tidak sah, contohnya

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

Atas ialah kandungan terperinci docker-composer dengan cepat membina persekitaran php nginx. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:learnku.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam