Lösung für das Problem, dass Docker Nginx nach dem Ausführen nicht mehr aufgerufen werden kann

Lösung für das Problem, dass Docker Nginx nach dem Ausführen nicht mehr aufgerufen werden kann

## 1

Ich lerne gerade die Docker-Bereitstellung und hatte ursprünglich geplant, Nginx zu dockerisieren.

Informationen zur benutzerdefinierten Konfiguration finden Sie in der offiziellen Docker-Image-Beschreibung

Nachdem ich die offizielle nginx.conf kopiert hatte, änderte und fügte einige Anpassungen hinzu, hauptsächlich das Blockieren der default.conf und des Include-Ordners sites-available

# /etc/nginx/conf.d/.conf einschließen;
Fügen Sie /etc/nginx/sites-available/ ein.

Offizielle Originalkonfiguration

Benutzer nginx;
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;

  #gzip ein;

  schließen Sie /etc/nginx/conf.d/*.conf ein;
}

Erstellen Sie eine neue Datei docker-compose.yml und geben Sie einfach Bilder, Namen, Ports an und mounten Sie lokale Dateien anstelle der Standardwerte.

Version: '3'
Leistungen:
 nginx-Proxy:
  Bild: nginx
  Containername: nginx
  Häfen:
   -8081:80
  Bände:
   - ./nginx/nginx.conf:/etc/nginx/nginx.conf:ro

## 2

Nach dem Ausführen von Docker-Compose Up bleibt es beim Anhängen an Nginx hängen und der Browser kann nicht auf die Portadresse zugreifen

Nginx wird gestartet ... fertig
Anhängen an nginx

Ich weiß nicht, wo das Problem liegt. Nachdem ich nach Informationen gesucht hatte, fand ich heraus, dass ich den tty-Parameter zum Debuggen verwenden kann.

Ändern Sie docker-compose.yml und fügen Sie eine Konfiguration tty:true hinzu.

docker exec -it nginx /bin/bash

Ich habe festgestellt, dass der vorherige Ordner „Sites-Available“ leer war, nachdem ich die Standarddatei „default.conf“ gelöscht und keine weiteren Konfigurationsdateien hinzugefügt hatte.

## 3

Ich habe mich ausgegraben, füge hinzu

-./nginx/sites-available:/etc/nginx/sites-available:ro

Und fügen Sie eine Konfigurationsdatei in „Sites verfügbar“ hinzu.

/etc/nginx/sites-available# ls
Datei default.conf

Nach dem Ausführen ist der Zugriff auf die Portadresse endlich normal

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:
  • Detailliertes grafisches Tutorial zum Aktivieren des sicheren Remotezugriffs mit Docker
  • Lösung für das Problem, dass beim Hinzufügen eines Tomcat-Containers zu Docker kein Zugriff auf die Homepage möglich ist
  • So greifen Sie über eine unabhängige IP direkt auf das Docker-für-Windows-Container-Intranet zu
  • Eine Fehlerbehebungserfahrung im CentOS-Docker-Bridge-Modus, bei dem auf den Host-Redis-Dienst nicht zugegriffen werden kann
  • Detaillierte Erklärung zur Verwendung von Docker zum Erstellen von extern zugänglichem MySQL
  • Detaillierte Erläuterung zur Lösung des Problems, dass der Docker-Container nicht über IP auf den Hostcomputer zugreifen kann
  • So greifen Sie in Docker auf den lokalen Computer (Hostcomputer) zu
  • So verwenden Sie einen Docker-Container für den Zugriff auf das Host-Netzwerk
  • Methode zum Zugriff auf unabhängige IP im Docker-Container
  • Drei Möglichkeiten zur Kommunikation zwischen Docker-Containern

<<:  So erstellen Sie einen untergeordneten Prozess in nodejs

>>:  Linux-Plattform MySQL ermöglicht Remote-Login

Artikel empfehlen

MySQL verwendet inet_aton und inet_ntoa, um IP-Adressdaten zu verarbeiten

Dieser Artikel stellt vor, wie Sie IP-Adressdaten...

Docker-Container-Protokollanalyse

Containerprotokolle anzeigen Verwenden Sie zunäch...

Nginx-Praxis zur Optimierung hoher Parallelität

1. Notwendigkeit des Tunings Ich habe mich immer ...

Lösung für das Docker-Pull-Timeout

In letzter Zeit ist das Abrufen von Docker-Images...

So übergeben Sie Parameter über CSS an JS

1. Hintergrund, der durch CSS übergeben werden mu...