Erstellen eines Containers [root@server1 ~]# docker run -it --name nginx1 -v /opt/data/web2:/web -p 81:80 centos:latest /bin/bash [root@608de4875036 /]# Rufen Sie das Webverzeichnis auf und laden Sie das Nginx-Paket herunter [root@608de4875036 web]# wget http://nginx.org/download/nginx-1.20.1.tar.gz Entpacken Sie das Verzeichnis [root@608de4875036 web]# ls nginx-1.20.1 nginx-1.20.1.tar.gz Installieren von Abhängigkeitspaketen [root@608de4875036 web]# yum -y installiere pcre-devel openssl openssl-devel gd-devel gcc gcc-c++ make [root@608de4875036 web]# yum -y groups mark install 'Entwicklungstools' Benutzer erstellen [root@608de4875036 web]# useradd -r -M -s /sbin/nologin nginx [root@608de4875036 web]# id nginx UID = 998 (nginx) GID = 996 (nginx) Gruppen = 996 (nginx) Erstellen einer Protokollspeicherdateiadresse [root@6ad47178bdd6 web]# mkdir-Protokoll Kompilieren und installieren [root@608de4875036 web]# ls Protokoll nginx-1.20.1 nginx-1.20.1.tar.gz [root@608de4875036 web]# cd nginx-1.20.1 [root@608de4875036 nginx-1.20.1]# ls auto conf html README ÄNDERUNGEN konfigurieren LIZENZ src CHANGES.ru Beitrag Mann [root@608de4875036 nginx-1.20.1]# ./konfigurieren \ --prefix=/web/nginx \ --Benutzer=nginx \ --group=nginx \ --mit-debug \ --mit-http_ssl_module \ --mit-http_realip_module \ --mit-http_image_filter_module \ --mit-http_gunzip_module \ --mit-http_gzip_static_module \ --mit-http_stub_status_module \ --http-log-path=/web/log/access.log \ --error-log-path=/web/log/error.log [root@608de4875036 nginx-1.20.1]# make && make install Katalog anzeigen [root@6ad47178bdd6 web]# ls Protokoll nginx nginx-1.20.1 nginx-1.20.1.tar.gz [root@608de4875036 web]# cd nginx [root@608de4875036 nginx]# ls conf html Protokolle sbin Konfigurieren von Umgebungsvariablen [root@608de4875036 nginx]# ls conf html Protokolle sbin [root@608de4875036 nginx]# cd sbin/ [root@608de4875036 sbin]# ls nginx [root@608de4875036 sbin]# pwd /web/nginx/sbin [root@608de4875036 sbin]# echo "export PATH=/web/nginx/sbin:\$PATH" > /etc/profile.d/nginx.sh [root@608de4875036 sbin]# Quelle /etc/profile.d/nginx.sh [root@608de4875036 sbin]# welches nginx /web/nginx/sbin/nginx Starten des Dienstes [root@608de4875036 sbin]# ss -antl Status Recv-Q Send-Q Lokale Adresse:Port Peer-Adresse:Port Prozess LISTEN 0 128 0.0.0.0:80 0.0.0.0:* Anzeigen von Diensten auf dem Container [root@608de4875036 web]# ls nginx nginx-1.20.1 nginx-1.20.1.tar.gz [root@608de4875036 web]# cd nginx [root@608de4875036 nginx]# ls client_body_temp html sbin conf-Protokolle scgi_temp fastcgi_temp proxy_temp uwsgi_temp Ansicht auf dem Hostcomputer [root@server1 ~]# cd /opt/data/ [root@server1 Daten]# ls Webseite1 Webseite2 [root@server1 Daten]# cd web2 [root@server1 web2]# ls Protokoll nginx nginx-1.20.1 nginx-1.20.1.tar.gz [root@server1 web2]# cd nginx [root@server1 nginx]# ls client_body_temp html sbin conf-Protokolle scgi_temp fastcgi_temp proxy_temp uwsgi_temp Sie können sehen, dass die Daten synchronisiert wurden Ändern Sie die Konfigurationsdatei auf dem Host Erstellen Sie ein Verzeichnis mit dem Namen xy und kopieren Sie den Spielcode in dieses Verzeichnis [root@server1 html]# pwd /opt/data/web2/nginx/html [root@server1 html]# mkdir yx [root@server1 html]# cd yx [root@server1 yx]# ls Bildindex.html js Erstellen eines Verzeichnistests [root@server1 html]# mkdir test [root@server1 html]# ls [root@server1 html]# ls 50x.html index.html test yx [root@server1 html]# mv 50x.html index.html test/ [root@server1 html]# ls Testen Sie yx Ändern Sie die Konfigurationsdatei nginx.conf [root@server1 conf]# vi nginx.conf ........ Server { hören Sie 8080; Servername test.example.com; Standort / { root /web/nginx/html/test; #Dateiadresse im Containerindex index.html index.htm; } } Server { hören Sie 80; Servername xy.beispiel.com; #Zeichensatz koi8-r; #access_log Protokolle/Host.access.log Haupt; Standort / { root /web/nginx/html/yx; #Dateiadresse im Containerindex index.html index.htm; } ..... Bei dieser Änderung gibt es jedoch ein Problem: Es wird nur ein Port zugeordnet, der andere Port jedoch nicht. [root@server1 conf]# Docker-Port 608de4875036 80/tcp -> 0.0.0.0:81 80/tcp -> :::81 Wie kann das Problem gelöst werden? Diesen Container löschen [root@server1 ~]# docker stop 608de4875036 608de4875036 [root@server1 ~]# docker rm 608de4875036 608de4875036 Die Daten befinden sich hier noch auf dem Hostcomputer [root@server1 web2]# ls Protokoll nginx nginx-1.20.1 nginx-1.20.1.tar.gz Erstellen Sie dieses Verzeichnis als Containerzuordnung neu [root@server1 ~]# docker run -it --name nginx2 -v /opt/data/web2:/web -p 80:80 -p 8080:8080 centos:latest /bin/bash [root@6ad47178bdd6 /]# Ansicht auf dem Hostcomputer [root@server1 ~]# docker ps CONTAINER ID BILD BEFEHL ERSTELLT STATUS PORTS NAMEN 6ad47178bdd6 centos:latest "/bin/bash" vor 23 Sekunden. Vor 22 Sekunden aktiv. 0.0.0.0:80->80/tcp, :::80->80/tcp, 0.0.0.0:8080->8080/tcp, :::8080->8080/tcp nginx2 [root@server1 ~]# Docker-Port 6ad47178bdd6 80/tcp -> 0.0.0.0:80 80/tcp -> :::80 8080/tcp -> 0.0.0.0:8080 8080/tcp -> :::8080 Überprüfen Sie, ob die Daten im Container synchronisiert sind [root@6ad47178bdd6 /]# ls bin home verloren+gefunden opt run sys var dev lib media proc sbin tmp web usw. lib64 mnt root srv usr [root@6ad47178bdd6 /]# cd web/ [root@6ad47178bdd6 web]# ls nginx nginx-1.20.1 nginx-1.20.1.tar.gz [root@6ad47178bdd6 web]# cd nginx [root@6ad47178bdd6 nginx]# ls client_body_temp html sbin conf-Protokolle scgi_temp fastcgi_temp proxy_temp uwsgi_temp #Datensynchronisation Starten des Dienstes #Schreiben Sie eine Umgebungsvariable [root@6ad47178bdd6 /]# cat /etc/profile.d/nginx.sh export PATH=/web/nginx/sbin:$PATH #Nginx-Benutzer erstellen [root@6ad47178bdd6 /]# useradd -r -M -s /sbin/nologin nginx [root@6ad47178bdd6 /]# nginx [root@6ad47178bdd6 /]# ss -antl Status Recv-Q Send-Q Lokale Adresse:Port Peer-Adresse:Port Prozess LISTEN 0 128 0.0.0.0:80 0.0.0.0:* LISTEN 0 128 0.0.0.0:8080 0.0.0.0:* Besuchen Sie 192.168.244.145:80 Besuchen Sie 192.168.244.145:8080 Dies ist das Ende dieses Artikels über die Implementierung unabhängiger Nginx-Containerkonfigurationsdateien. Weitere verwandte unabhängige Nginx-Containerkonfigurationsdateien finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder durchsuchen Sie die folgenden verwandten Artikel weiter. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen! Das könnte Sie auch interessieren:
|
Ich bin vor kurzem mit MySQL in Berührung gekomme...
[LeetCode] 175.Zwei Tabellen kombinieren Tabelle:...
Inhaltsverzeichnis 1. Synchronisationsprinzip 2. ...
Vorwort: In Vue können Props verwendet werden, um...
Inhaltsverzeichnis App.vue sub1.vue sub2.vue Zusa...
1. Grundkenntnisse (Methoden von Datumsobjekten) ...
Inhaltsverzeichnis 1. Vorverarbeitung 2. Zusammen...
Inhaltsverzeichnis 1. Kommunikation zwischen Elte...
Nginx unterstützt drei Möglichkeiten zum Konfigur...
Im vorherigen Artikel haben wir darüber geschrieb...
In diesem Artikel wird der spezifische Code von j...
Inhaltsverzeichnis Vorwort Konvertierungsbeziehun...
Voraussetzungen 1. Docker wurde auf dem lokalen C...
Lösung für das Problem, dass in Linux kein Entpac...
In diesem Artikelbeispiel wird der spezifische Co...