Nginx mit Docker bereitstellen, so einfach ist das Nur eine Befehlszeile: Docker-Ausführung \ --name nginx-health-web-pc \ -d -p 6800:80 \ -v /usr/docker/nginx/html:/usr/share/nginx/html \ nginx Das Ausführen und Starten macht Spaß ~~~~~ Zu diesem Zeitpunkt erscheint plötzlich das Front-End und sagt: „Sie müssen Ihrem Nginx eine Konfiguration hinzufügen“ und sagt Ihnen auch: „Der und der hat es vorher so konfiguriert“, Natürlich können Sie dies zu diesem Zeitpunkt nicht ablehnen, aber die eigentliche Konfiguration erfordert dennoch einige Überlegungen. Unter normalen Umständen wird Docker beim Start konfiguriert. Mounten Sie einfach das Verzeichnis der Konfigurationsdatei, was einfach und bequem ist. Nginx lädt jedoch zuerst eine Hauptkonfigurationsdatei nginx.conf und dann die Unterkonfigurationsdateien im Verzeichnis conf.d in nginx.conf (normalerweise mindestens eine Datei default.conf). Dies ist zwar wesentlich umständlicher, als ein Verzeichnis separat zu mounten, aber es ist nicht schwierig, solange Sie eine klare Vorstellung haben. Schauen wir uns zunächst den gemounteten Befehl an: Docker-Befehl starten Docker-Ausführung \ --name meinNginx \ -d -p 80:80 \ -v /usr/docker/myNginx/html:/usr/share/nginx/html \ -v /etc/docker/myNginx/nginx.conf:/etc/nginx/nginx.conf:ro \ -v /etc/docker/myNginx/conf.d:/etc/nginx/conf.d \ nginx Dabei sind einige Dinge zu beachten: (1) Das erste "-v" ist der Projektspeicherort. Legen Sie das Projekt einfach in das Verzeichnis, in dem es gemountet ist. (2) Das zweite „-v“ ist die Hauptkonfigurationsdatei „nginx.conf“, die gemountet wird. Beachten Sie, dass in der Datei „nginx.conf“ eine Zeile „include /etc/nginx/conf.d/*.conf;“ vorhanden ist. Dieses „include“ verweist auf den Pfad der Unterkonfigurationsdatei. Bitte beachten Sie, dass der Pfad nach „include“ nicht falsch sein darf. (3) Das dritte „-v“ mountet auch den Pfad der Unterkonfigurationsdatei in Docker. Beachten Sie, dass dieser mit dem Pfad übereinstimmen muss, auf den Include in (2) zeigt. (4) Es ist wichtig zu betonen, dass nginx.conf eine Datei mountet (Docker empfiehlt dies nicht) und conf.d ein Verzeichnis mountet Starten wir es zunächst und stellen fest, dass ein Problem vorliegt, weil die Konfigurationsdatei noch nicht vorhanden ist. Konfigurieren von Profilen Wir finden die Konfigurationsdatei, die bei der Installation von nginx mit der herkömmlichen Methode generiert wird (normalerweise unter "/etc/nginx"), die dem Einhängeort im obigen Startbefehl entspricht, legen die Hauptkonfigurationsdatei nginx.conf am entsprechenden Speicherort "/etc/docker/myNginx/nginx.conf" ab und legen die Unterkonfigurationsdatei "default.conf" im Verzeichnis "/etc/docker/myNginx/conf.d" ab. Führen Sie den Startbefehl erneut aus und stellen Sie fest, dass er bereits in Ordnung ist. Zu diesem Zeitpunkt können die Dateien im Docker nach Belieben konfiguriert werden, was genau der nativen Installation entspricht Idee: Bei der Konfiguration müssen Sie eine Idee haben: Die gemountete Datei muss beim Ausführen in den Docker-Prozess geladen werden! Auf diese Weise kommt man nicht so schnell durcheinander. ---------------------------------------------------Trennlinie--------------------------------------------------- Poste meine Konfigurationsdatei: nginx.conf Benutzer root; Arbeiterprozesse 1; Fehlerprotokoll /var/log/nginx/error.log warnen; pid /var/run/nginx.pid; Ereignisse { Arbeiterverbindungen 1024; } http { /etc/nginx/mime.types einschließen; Standardtyp Anwendung/Oktett-Stream; log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; Zugriffsprotokoll /var/log/nginx/access.log Haupt; sendfile an; #tcp_nopush ein; KeepAlive-Timeout 65; Autoindex aktiviert; #gzip ein; schließen Sie /etc/nginx/conf.d/*.conf ein; Maximale Client-Body-Größe: 100 M; Client-Header-Puffergröße 128k; große_Client_Header_Puffer 4 128k; } Datei default.conf Server { hören Sie 80; Servername localhost; #Zeichensatz koi8-r; #access_log /var/log/nginx/log/host.access.log Haupt; Standort / { root /usr/nginx/dacheng-wechat-web; # root /usr/nginx/html; Index Index.html Index.htm; Autoindex aktiviert; try_files $uri /index/index/page.html; #try_files $uri /index/map/page.html; } #Fehlerseite 404 /404.html; # Server-Fehlerseiten auf die statische Seite /50x.html umleiten # Fehlerseite 500 502 503 504 /50x.html; Standort = /50x.html { root /usr/share/nginx/html; } # Proxy für die PHP-Skripte an Apache, das auf 127.0.0.1:80 lauscht # #Standort ~ \.php$ { # Proxy-Passwort http://127.0.0.1; #} # Übergeben Sie die PHP-Skripte an den FastCGI-Server, der auf 127.0.0.1:9000 lauscht. # #Standort ~ \.php$ { #Wurzel-HTML; # fastcgi_pass 127.0.0.1:9000; # fastcgi_index index.php; # fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name; #fastcgi_params einschließen; #} # Zugriff auf .htaccess-Dateien verweigern, wenn das Apache-Dokumentenstammverzeichnis # stimmt mit nginx überein # #Standort ~ /\.ht { # alles ablehnen; #} } Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird. Das könnte Sie auch interessieren:
|
<<: Zusammenfassung der Verwendung von vue Watch und Computed
>>: MySQL 5.7-Bereitstellung und Remotezugriffskonfiguration unter Linux
Inhaltsverzeichnis CSS3-Boxmodell a. CSS3-Filter ...
Problembeschreibung Wenn VMware Workstation eine ...
Inhaltsverzeichnis Problembeschreibung 1. Basislö...
Tutorial-Reihe MySQL-Reihe: Grundlegende Konzepte...
1. css: dragTable.css @Zeichensatz "UTF-8&qu...
In MySQL können alle Felder der Typen char, varch...
Vorwort Das Konzept des Dunkelmodus stammt ursprü...
Während Ubuntu heute das beliebteste Linux-Betrie...
Zuerst gebe ich Ihnen den Aktivierungscode für VM...
Die Beispiele in diesem Artikel laufen auf MySQL ...
Die Betriebsumgebung dieses Tutorials: Windows 7-...
a href="#"> Nach dem Klicken auf den ...
In diesem Artikel wird der spezifische Code von j...
1. Langsames Abfrageprotokoll 1.1 MySQL-Protokoll...
1. Download-Adresse: http://dev.mysql.com/downloa...