Penggunaan merentas platform aplikasi PHP dengan Docker Compose, Nginx dan MariaDB

WBOY
Lepaskan: 2023-10-12 15:52:01
asal
948 orang telah melayarinya

通过Docker Compose、Nginx和MariaDB实现PHP应用程序的跨平台部署

Penggunaan merentas platform aplikasi PHP melalui Docker Compose, Nginx dan MariaDB memerlukan contoh kod khusus

Dengan pengkomputeran awan dan bekas Dengan pembangunan teknologi, penggunaan merentas platform telah menjadi topik hangat. Dalam artikel ini, kami akan memperkenalkan cara menggunakan Docker Compose, Nginx dan MariaDB untuk mencapai penggunaan merentas platform aplikasi PHP dan memberikan contoh kod khusus.

Docker Compose ialah alat untuk mentakrif dan menjalankan aplikasi Docker berbilang bekas Ia menggunakan fail YAML mudah untuk mengkonfigurasi aspek perkhidmatan, rangkaian dan storan aplikasi. Nginx ialah pelayan web berprestasi tinggi dan pelayan proksi terbalik yang boleh digunakan untuk mengedarkan trafik ke berbilang aplikasi PHP kontena. MariaDB ialah sistem pengurusan pangkalan data hubungan sumber terbuka yang boleh digunakan untuk menyimpan data aplikasi.

Pertama, kami perlu menulis fail konfigurasi Docker Compose untuk mentakrifkan perkhidmatan aplikasi PHP kami. Berikut ialah contoh mudah:

version: '3'

services:
  web:
    build:
      context: .
      dockerfile: Dockerfile
    ports:
      - 80:80
    depends_on:
      - db

  db:
    image: mariadb
    environment:
      - MYSQL_ROOT_PASSWORD=123456
    volumes:
      - db_data:/var/lib/mysql

volumes:
  db_data:
Salin selepas log masuk

Dalam fail konfigurasi di atas, kami menentukan dua perkhidmatan: web dan db. Perkhidmatan web ialah aplikasi PHP kami dan menggunakan fail yang dipanggil Dockerfile untuk membina imej. Kami memetakan port kontena 80 ke port hos 80 supaya aplikasi kami boleh diakses secara luaran. Perkhidmatan db menggunakan imej rasmi MariaDB, dan menetapkan kata laluan akar dan volum data.

Seterusnya, kita perlu menulis fail Docker untuk membina imej aplikasi PHP kami. Berikut ialah contoh mudah:

FROM php:7.4-fpm

WORKDIR /app

COPY . /app

RUN apt-get update 
    && apt-get install -y nginx 
    && docker-php-ext-install pdo_mysql

CMD service nginx start && php-fpm

EXPOSE 80
Salin selepas log masuk

Dalam fail Docker di atas, kami membina imej kami berdasarkan imej php:7.4-fpm rasmi. Kami menetapkan direktori kerja kepada /app dan menyalin semua fail dalam direktori semasa ke direktori /app bekas. Seterusnya, kami memasang sambungan nginx dan pdo_mysql menggunakan arahan apt-get. Akhirnya, kami menetapkan arahan semasa memulakan bekas, termasuk memulakan nginx dan php-fpm, dan membuka port 80.

Selepas melengkapkan konfigurasi di atas, kami boleh menggunakan arahan berikut untuk memulakan aplikasi PHP kami:

docker-compose up -d
Salin selepas log masuk

Arahan ini akan mencipta dan memulakan aplikasi PHP kami berdasarkan konfigurasi Docker Compose fail Container untuk aplikasi PHP. Parameter -d menunjukkan menjalankan bekas di latar belakang.

Setelah bekas berjaya dimulakan, kami boleh melihat aplikasi PHP kami dengan mengakses http://localhost melalui penyemak imbas. Nginx akan mengedarkan trafik ke bekas aplikasi PHP kami, dan aplikasi kemudiannya akan menyambung ke pangkalan data MariaDB untuk mengambil dan menyimpan data.

Ringkasnya, penggunaan merentas platform aplikasi PHP boleh dicapai dengan mudah menggunakan Docker Compose, Nginx dan MariaDB. Fail docker-compose.yml boleh mentakrifkan perkhidmatan aplikasi dan Fail Docker boleh membina imej aplikasi. Gunakan arahan Docker Compose untuk melancarkan dan mengurus bekas aplikasi anda dengan mudah. Penyelesaian penggunaan merentas platform ini bukan sahaja mudah dan cekap, tetapi juga mempunyai kebolehskalaan dan kebolehselenggaraan yang baik.

Di atas adalah contoh kod khusus untuk menggunakan Docker Compose, Nginx dan MariaDB untuk melaksanakan penggunaan merentas platform aplikasi PHP. Harap ini membantu!

Atas ialah kandungan terperinci Penggunaan merentas platform aplikasi PHP dengan Docker Compose, Nginx dan MariaDB. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!