Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Proses penggunaan pantas untuk aplikasi PHP menggunakan Docker Compose, Nginx dan MariaDB

Proses penggunaan pantas untuk aplikasi PHP menggunakan Docker Compose, Nginx dan MariaDB

WBOY
WBOYasal
2023-10-12 15:12:111407semak imbas

使用Docker Compose、Nginx和MariaDB实现PHP应用程序的快速部署流程

Gunakan Docker Compose, Nginx dan MariaDB untuk melaksanakan proses penggunaan pantas aplikasi PHP

Abstrak:
Artikel ini akan memperkenalkan cara menggunakan Docker Compose, Nginx dan MariaDB untuk melaksanakan proses penggunaan pantas aplikasi PHP. Kami akan menggunakan Docker Compose untuk mentakrif dan mengurus konfigurasi aplikasi kontena, Nginx sebagai pelayan web dan MariaDB sebagai pangkalan data. Dengan membina dan memulakan bekas ini, kami boleh menggunakan dan menjalankan aplikasi PHP dengan cepat.

Pengenalan:
Dengan perkembangan teknologi pengkomputeran awan dan kontena, ia menjadi lebih mudah dan mudah untuk menggunakan aplikasi dengan cepat. Menggunakan Docker Compose, kami boleh menentukan dan mengurus bekas yang diperlukan oleh aplikasi kami dengan menulis fail konfigurasi YAML. Dalam artikel ini, kami akan menunjukkan cara menggunakan Docker Compose untuk mentakrif dan menggunakan aplikasi PHP yang mengandungi Nginx dan MariaDB.

Langkah 1: Pasang Docker dan Docker Compose
Pertama, pastikan anda memasang Docker dan Docker Compose pada sistem anda. Anda boleh memuat turunnya dari tapak web rasmi dan ikut arahan untuk memasangnya.

Langkah 2: Cipta Direktori Projek
Sebelum kita mula, mari buat direktori projek baharu. Dalam direktori ini kami akan mencipta fail yang dipanggil docker-compose.yml yang akan menentukan konfigurasi aplikasi kami.

Langkah 3: Buat fail konfigurasi Docker Compose
Dalam direktori projek, buat fail yang dipanggil docker-compose.yml dan gunakan kod contoh berikut sebagai templat:

version: '3'
services:
  web:
    build:
      context: .
      dockerfile: Dockerfile
    ports:
      - "80:80"
    volumes:
      - ./app:/var/www/html
    depends_on:
      - db
  db:
    image: mariadb:latest
    environment:
      - MYSQL_ROOT_PASSWORD=123456
      - MYSQL_DATABASE=myapp
      - MYSQL_USER=myuser
      - MYSQL_PASSWORD=mypassword
    volumes:
      - ./data:/var/lib/mysql

Dalam contoh di atas, kami menentukan dua Perkhidmatan: web dan db. Perkhidmatan web ialah perkhidmatan tempat aplikasi PHP kami hidup, dan fail yang dipanggil Dockerfile digunakan untuk membina bekas web. Kita perlu memetakan port tempatan 80 ke port kontena 80 dan lekapkan kod aplikasi ke direktori /var/www/html bekas. Perkhidmatan db ialah perkhidmatan pangkalan data MariaDB kami, yang menggunakan mariadb:imej terkini terkini dan menetapkan kata laluan akar dan nama pangkalan data pangkalan data.

Langkah 4: Buat Dockerfile
Dalam direktori projek, buat fail bernama Dockerfile dan gunakan kod contoh berikut sebagai templat:

FROM php:7.4-fpm

RUN apt-get update && apt-get install -y 
    nginx 
    libmcrypt-dev 
    libjpeg-dev 
    libpng-dev 
    libfreetype6-dev 
    libxml2-dev 
    libzip-dev 
    zip 
    unzip

RUN docker-php-ext-install mysqli pdo pdo_mysql xml zip

COPY nginx.conf /etc/nginx/sites-available/default

WORKDIR /var/www/html

CMD service nginx start && php-fpm

Dalam contoh di atas, kami menggunakan php:7.4-fpm sebagai imej asas, dan dipasang beberapa sambungan PHP dan Nginx. Kami juga menyalin fail nginx.conf ke direktori /etc/nginx/sites-available/default dan menetapkan direktori kerja kepada /var/www/html.

Langkah 5: Buat fail konfigurasi Nginx
Dalam direktori projek, buat fail bernama nginx.conf dan gunakan kod contoh berikut sebagai templat:

server {
    listen 80;
    server_name localhost;

    root /var/www/html;

    location / {
        index index.php;
        try_files $uri $uri/ /index.php?$query_string;
    }

    location ~ .php$ {
        fastcgi_pass web:9000;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }
}

Dalam contoh di atas, kami telah mentakrifkan pelayan Nginx yang mudah, mendengar pada pelabuhan 80. Direktori akar ditetapkan kepada /var/www/html, dan kaedah pemprosesan fail PHP dikonfigurasikan.

Langkah 6: Bina dan mulakan bekas
Dalam direktori projek, buka terminal dan laksanakan arahan berikut untuk membina dan memulakan bekas:

docker-compose up -d

Arahan ini akan membina dan memulakan bekas aplikasi berdasarkan Docker Compose fail konfigurasi. Semasa proses binaan, Docker akan memuat turun dan memasang imej dan kebergantungan yang diperlukan secara automatik.

Langkah 7: Uji Aplikasi
Kini anda boleh menguji aplikasi PHP anda dengan melawati http://localhost dalam pelayar web anda. Jika semuanya baik-baik saja, anda akan melihat halaman alu-aluan aplikasi.

Kesimpulan:
Dengan menggunakan Docker Compose, Nginx dan MariaDB, kami boleh menggunakan dan menjalankan aplikasi PHP dengan cepat. Dengan mentakrif dan mengurus konfigurasi aplikasi kontena, kami boleh memudahkan dan mempercepatkan proses penggunaan aplikasi. Saya harap artikel ini akan membantu anda mencapai penggunaan cepat aplikasi PHP.

Atas ialah kandungan terperinci Proses penggunaan pantas untuk aplikasi PHP menggunakan Docker Compose, Nginx dan MariaDB. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn