Nginx kann nicht in alpiner Linux (Docker) ausgeführt werden
2717
paul23
Nun, ich habe einen Docker-Container für alpine Linux mit nginx darauf eingerichtet
( apk add nginx)
Jetzt versuche ich, Nginx auszuführen. Mit dem einfachen Befehl nginxDies gibt den folgenden Fehler zurück:
nginx: [emerg] open() "/run/nginx/nginx.pid" failed (2: No such file or directory)
Was verursacht das? - Selbst als root habe ich keine Erlaubnis zum Öffnen, /run/also kann ich die Dinge nicht wirklich überprüfen. Meine nginx.conf ist:
Sicherlich ist kein Server enthalten, aber ich erwarte, dass er laufen kann und niemals irgendetwas bedient. - Aber selbst wenn ich die Aufnahme aktiviere (was auf die Standard-HTML-Seite umleitet, die ich auch in das Docker kopiert habe), tritt der gleiche Fehler auf.
3 Antworten auf die Frage
1
ewatt
Das /run/nginxVerzeichnis ist auf den neuesten Alpincontainern nicht vorhanden.
Sie können entweder das Verzeichnis erstellen oder den Speicherort der PID-Datei ändern.
Erstellen Sie das Verzeichnis in Ihrer Docker-Datei:
RUN mkdir -p /run/nginx
Oder ändern Sie den Ort der PID-Datei:
nginx -g 'pid /tmp/nginx.pid'
1
Ben Njeri
Es ist nicht wirklich notwendig, einen eigenen Nginx-Docker-Container aus dem Alpine-Base-Image zu erstellen, wenn sich ein offizielles Alpine-Nginx-Docker-Image auf dem Docker Hub befindet.