Rumah  >  Artikel  >  Operasi dan penyelenggaraan  >  Bagaimana untuk membina pelayan web berprestasi tinggi dalam kontena di Linux?

Bagaimana untuk membina pelayan web berprestasi tinggi dalam kontena di Linux?

WBOY
WBOYasal
2023-07-29 16:27:431351semak imbas

Bagaimana untuk membina pelayan web berprestasi tinggi dalam kontena di Linux?

Pengenalan: Dengan perkembangan pesat pengkomputeran awan, teknologi kontena telah menjadi pilihan popular untuk penggunaan aplikasi moden. Membina pelayan web berprestasi tinggi dalam kontena di Linux bukan sahaja boleh meningkatkan kebolehskalaan dan kebolehpercayaan aplikasi, tetapi juga menjimatkan penggunaan sumber perkakasan Artikel ini akan memperkenalkan cara menggunakan Docker dan Nginx untuk membina pelayan web berprestasi tinggi dalam kontena .

1. Pasang Docker
Untuk membina pelayan web dalam kontena di Linux, anda perlu memasang Docker terlebih dahulu. Jalankan arahan berikut dalam terminal untuk memasang Docker:

sudo apt-get update
sudo apt-get install docker.io

Selepas pemasangan selesai, anda boleh melaksanakan arahan berikut untuk menyemak sama ada Docker berjaya dipasang:

docker --version

2. Buat imej Docker

  1. Buat direktori dan fail

Buat Direktori baharu untuk menyimpan fail aplikasi kami. Jalankan arahan berikut dalam terminal:

mkdir myapp
cd myapp

Buat fail bernama Dockerfile dalam direktori myapp dan buka fail dengan editor teks:

touch Dockerfile
  1. Menulis Dockerfile

Tulis kandungan berikut dalam Dockerfile:

# 使用基础镜像
FROM ubuntu:latest

# 更新软件源
RUN apt-get update

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

# 复制配置文件到镜像
COPY nginx.conf /etc/nginx/nginx.conf

# 复制应用文件到镜像
COPY app /var/www/html

# 暴露端口
EXPOSE 80

# 启动Nginx服务
CMD ["nginx", "-g", "daemon off;"]
    Tulis fail konfigurasi dan fail aplikasi
Dalam direktori myapp yang dibuat pada langkah sebelumnya, buat dua lagi fail, satu bernama nginx.conf dan satu bernama app.

Tulis kandungan berikut dalam nginx.conf:

worker_processes auto;
pid /run/nginx.pid;

events {
    worker_connections 1024;
}

http {
    server {
        listen 80;
        server_name localhost;
        root /var/www/html;
        index index.html;

        location / {
            try_files $uri $uri/ =404;
        }
    }
}

Tulis fail HTML ringkas dalam apl, seperti index.html.

    Bina imej Docker
Kembali ke terminal, laksanakan arahan berikut untuk membina imej Docker:

docker build -t myapp .

Antaranya, . mewakili direktori di mana Fail Docker berada, dan myapp ialah nama kami yang diberikan kepada imej.

.表示Dockerfile所在的目录,myapp是我们为镜像取的名字。

三、运行容器化的Web服务器
在Docker镜像构建完毕后,就可以运行容器化的Web服务器了。执行以下命令:

docker run -d -p 80:80 myapp

其中,-d表示以后台模式运行容器,-p 80:80表示将主机的80端口映射到容器的80端口,myapp3. Jalankan pelayan web kontena

Selepas imej Docker dibina, anda boleh menjalankan pelayan web kontena. Jalankan arahan berikut:

rrreee

Antaranya, -d bermaksud menjalankan bekas dalam mod latar belakang, -p 80:80 bermaksud memetakan port 80 hos ke port 80 daripada bekas, myapp ialah nama imej yang kami bina sebelum ini.


Pada ketika ini, kami telah berjaya membina pelayan web berprestasi tinggi dalam kontena di Linux. Aplikasi pada pelayan ini boleh diakses dengan mengakses alamat IP atau nama domain hos.

🎜Kesimpulan: 🎜Artikel ini memperkenalkan cara menggunakan Docker dan Nginx untuk membina pelayan web berprestasi tinggi dalam kontena. Melalui kontena, kami boleh menggunakan dan mengurus aplikasi dengan lebih mudah serta meningkatkan kebolehskalaan dan kebolehpercayaan aplikasi. Saya harap artikel ini dapat membantu semua orang membina pelayan web kontena di Linux. 🎜

Atas ialah kandungan terperinci Bagaimana untuk membina pelayan web berprestasi tinggi dalam kontena di Linux?. 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