Rumah  >  Artikel  >  Operasi dan penyelenggaraan  >  Cara menggunakan docker untuk menggunakan program web

Cara menggunakan docker untuk menggunakan program web

PHPz
PHPzasal
2023-04-04 10:41:392622semak imbas

Sebagai teknologi kontena yang ringan, Docker mempunyai kelebihan unik dalam penggunaan dan pengurusan aplikasi. Menggunakan Docker, kami boleh membungkus aplikasi dan persekitaran berjalan yang diperlukan ke dalam bekas mudah alih untuk mencapai penggunaan dan pengurusan yang pantas dan fleksibel.

Artikel ini akan memperkenalkan cara menggunakan Docker untuk menggunakan program web, dengan mengambil Nginx+PHP-FPM sebagai contoh.

1. Pasang Docker

Mula-mula, kita perlu memasang Docker pada mesin ini. Kaedah pemasangan khusus boleh didapati di [laman web rasmi Docker](https://docs.docker.com/engine/installation/).

Selepas pemasangan selesai, anda boleh menggunakan arahan berikut untuk menyemak versi Docker:

docker version

2 Sediakan aplikasi Web

Artikel ini mengambil yang paling mudah Program PHP sebagai contoh: Cipta fail index.php baharu dalam mana-mana direktori pada mesin ini dengan kandungan berikut:

<?php
phpinfo();
?>

3. Sediakan fail Docker

Seterusnya, kita perlu sediakan fail Docker untuk membina imej. Cipta fail Dockerfile baharu dalam mana-mana direktori pada mesin ini dengan kandungan berikut:

# 基础镜像
FROM php:7.0-fpm

# 将本地文件夹挂载到当前容器
RUN mkdir -p /var/www/html
WORKDIR /var/www/html
COPY index.php /var/www/html

# 安装nginx
RUN apt-get update
RUN apt-get install -y nginx

# 将nginx配置文件复制到容器中
COPY default.conf /etc/nginx/conf.d/default.conf

# 开放80端口
EXPOSE 80

# 启动nginx和php-fpm服务
CMD service nginx start && php-fpm

Fail Docker di atas mengandungi bahagian berikut:

  • Imej asas: imej yang kami harapkan , PHP7.0-FPM dipilih sebagai imej asas di sini;
  • lekapkan folder setempat ke bekas semasa: di sini kami menyalin fail index.php tempatan ke
  • pemasangan Nginx : Pasang Nginx dalam bekas dan salin fail konfigurasi ke bekas;
  • Buka port 80: Buka port 80 bekas untuk akses luaran; dan perkhidmatan php-fpm.
  • Selain itu, kami juga memerlukan fail konfigurasi Nginx. Cipta fail
baharu dalam mana-mana direktori pada mesin ini dengan kandungan berikut:

default.conf

Fail konfigurasi Nginx di atas mengandungi bahagian berikut:
server {
        listen 80;
        server_name localhost;
        root /var/www/html;

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

        location ~ \.php$ {
                fastcgi_param  SCRIPT_FILENAME  $document_root/$fastcgi_script_name;
                include fastcgi_params;
                fastcgi_pass unix:/var/run/php/php7.0-fpm.sock;
        }
}

    : Tentukan nombor port dan nama pelayan Nginx; 🎜>: Tentukan laluan fail program PHP;
  • server
  • : Tentukan alamat perkhidmatan php-fpm.
  • root
  • 4 Bina imej
  • locationDalam direktori dua fail di atas, jalankan arahan berikut untuk membina imej:
  • fastcgi_paramDi mana,
  • ialah nama Imej,
  • terakhir mewakili direktori semasa. fastcgi_pass
  • Selepas pembinaan selesai, kita boleh menggunakan arahan berikut untuk melihat semua imej semasa:

5 Jalankan bekas

Jalankan arahan berikut untuk bermula bekas:
docker build -t webapp .

webapp Antaranya, parameter . memetakan port 80 dalam bekas ke port 80 mesin tempatan dan parameter

menentukan zon waktu bekas. Selepas

berjalan dengan jayanya, kita boleh memasukkan
docker images
dalam pelayar untuk mengakses aplikasi web.

6. Ringkasan

Melalui langkah di atas, kami berjaya menggunakan aplikasi web mudah menggunakan Docker. Menggunakan Docker boleh mengurangkan proses konfigurasi yang kompleks dengan berkesan, menjadikan penggunaan dan pengurusan lebih mudah dan lebih automatik. Dengan pembangunan berterusan dan penambahbaikan teknologi kontena, Docker pasti akan menjadi salah satu alat arus perdana untuk penggunaan dan pengurusan aplikasi pada masa hadapan.
docker run -p 80:80 -e TZ=Asia/Shanghai webapp

Atas ialah kandungan terperinci Cara menggunakan docker untuk menggunakan program web. 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