Rumah  >  Artikel  >  Operasi dan penyelenggaraan  >  Bagaimana untuk menggunakan Nginx pada Docker

Bagaimana untuk menggunakan Nginx pada Docker

王林
王林ke hadapan
2023-05-11 18:28:182974semak imbas

1. Muat turun imej Nginx dari docker

docker pull nginx

2 Cipta direktori pelekap

Fail selepas

diletakkan di sini, dan direktori Nginx dalam docker yang sepadan dipetakan, jadi di sana tidak perlu menukarnya. Fail telah memasuki bekas

mkdir -p /data/nginx/{conf,conf.d,html,logs}

3. Untuk memastikan ketepatan fail, disyorkan untuk memasukkan bekas terlebih dahulu dan menyalin fail yang sepadan

Jika menyusahkan, anda boleh buka dua tetingkap dan masukkan satu Pergi ke bekas, salin bahagian kiri ke sebelah kanan, ini untuk memastikan fail itu betul

#启动容器
docker run -itd nginx /bin/bash
#进入容器
docker attach xxxxxxxxxx
说明 文件 挂载路径 nginx路径
配置文件 nginx.conf /data/nginx/conf/nginx.conf /etc/nginx/nginx.conf
配置文件文件夹 conf.d文件夹 /data/nginx/conf.d /etc/nginx/conf.d
首页文件夹html路径 html文件夹 /data/nginx/html /usr/share/nginx/html
日志文件 log文件夹 /data/nginx/logs /var/log/nginx

Ini adalah direktori pelekap yang sepadan, salin fail nginx.conf dan default.conf dalam conf.d untuk Letakkan folder yang sepadan, dan kemudian ubah suainya

4. Seterusnya, ubah suai fail default.conf

Paling banyak, saya akan menukar nombor port, laluan akses, dll.

server {
 
    #端口号
    listen       80;
    #定义使用 localhost 访问
    server_name  localhost;
 
    #charset koi8-r;
    #access_log  /var/log/nginx/host.access.log  main;
 
    location / {
        #根目录位置
        root   /usr/share/nginx/html;
        #index 文件位置
        index  1.html;
    }
 
    #error_page  404              /404.html;
 
    # redirect server error pages to the static page /50x.html
    #
    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   /usr/share/nginx/html;
    }
 
    # proxy the PHP scripts to Apache listening on 127.0.0.1:80
    #
    #location ~ \.php$ {
    #    proxy_pass   http://127.0.0.1;
    #}
 
    # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
    #
    #location ~ \.php$ {
    #    root           html;
    #    fastcgi_pass   127.0.0.1:9000;
    #    fastcgi_index  index.php;
    #    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
    #    include        fastcgi_params;
    #}
 
    # deny access to .htaccess files, if Apache's document root
    # concurs with nginx's one
    #
    #location ~ /\.ht {
    #    deny  all;
    #}
}

1.html yang digunakan untuk ujian di sini ditulis oleh saya sendiri

<html>
<head>
<title>Mynginx</title>
</head>
<body>
<h2>
欢迎使用nginx!
</h2>
</body>
</html>

Seterusnya, anda boleh memulakan bekas

docker run  --name myNginx -d -p 8089:80 -v /data/nginx/html:/usr/share/nginx/html -v /data/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v /data/nginx/conf.d:/etc/nginx/conf.d  -v /data/nginx/logs:/var/log/nginx nginx

Laluan pelekap mestilah betul, jangan salah tulis

-p 8089:80 Di sini, petakan port 80 ke port 8089 hos, supaya aksesnya ialah port 8089. Tidak perlu menukar port lalai nginx

Seterusnya, anda boleh melihat bekas itu Sama ada ia bermula seperti biasa

docker ps

Jika anda tidak melihat bekas itu, ia bermakna ada adalah masalah dengan permulaan. Periksa sama ada fail konfigurasi ditulis dengan betul atau laluan pelekap salah.

Anda boleh menyemak imbas terus selepas permulaan Server localhost:8089 dan melihat halaman 1.index yang baru ditulis

6. Kemas kini fail konfigurasi tanpa berhenti nginx

Apabila kami mengubah suai fail konfigurasi, kami perlu mengemas kini fail konfigurasi Pada masa ini, buka dua tetingkap Ia sangat keren

#进入容器
docker exec -it xxxxxxxxxxx /bin/bash
 
#测试配置文件是否有问题
nginx -t
 
#要是显示 successful 就可以更新了
nginx -s reload

Atas ialah kandungan terperinci Bagaimana untuk menggunakan Nginx pada Docker. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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