Ich installiere eine neue Instanz von Discourse und versuche, sie im Stammverzeichnis der Domain zu installieren (ich habe Configure your hosted Discourse site to run at the root or apex domain (e.g. example.com) gelesen und kann die Anforderungen erfüllen). Ich habe beim ersten Mal einen Fehler gemacht und festgestellt, dass, wenn Sie dem discourse-setup-Skript eine Apex-Domain angeben, Nginx außerhalb von Docker läuft – es ist einfach zu testen und zu replizieren
Ich habe eine neue VM-Instanz gestartet und bestätigt, dass Nginx nicht installiert war und Port 80 nicht offen war
Habe das discourse-setup-Skript ausgeführt und dem Skript eine Apex-Domain angegeben
Skript läuft bis zur Fertigstellung
Nginx läuft außerhalb von Docker (wie durch ps -ax bestätigt) und belegt Port 80; das Surfen zur Domain zeigt den Willkommensbildschirm von Nginx
Ich habe danach gesucht und keinen weiteren Bericht gefunden, obwohl ich gesehen habe, dass mehrere Personen Nginx außerhalb von Docker laufen ließen, und dies könnte die Ursache sein
Ich erkenne an, dass dies meine Schuld ist – vielleicht sollte das Skript jedoch keine Apex-Domain zulassen?
Das ist technisch nicht möglich. Ich bin ziemlich sicher, dass auf Ihrem VM wahrscheinlich Nginx vorinstalliert war. Einige Cloud-Anbieter bündeln einen Webserver (Apache2 oder Nginx) in ihren Standard-Images.
Hallo! Prost; ja, das habe ich auch angenommen und deshalb habe ich eine brandneue VM bereitgestellt, getestet, um sicherzustellen, dass Nginx nicht installiert war, bevor ich discourse-setup ausgeführt habe; unmittelbar danach lief Nginx wie beschrieben.
Ich habe ein paar Installationen und habe jedes Mal genau die gleiche Vorgehensweise befolgt, und sie funktionieren alle wie erwartet. Dies war das erste Mal, dass ich versuchte, im Stammverzeichnis der Domain zu installieren (also dem Setup-Skript example.com anzugeben) und dieses Problem hatte. Gleiche VM, gleiches Betriebssystem usw.
Ich werde es noch einmal testen und weitere Protokolle sammeln.
Ich habe heute Morgen Discourse auf einer Root-Domain installiert, um es auszuprobieren, und das hat einwandfrei funktioniert. (Digital Ocean, 2GB Droplet)
ps -ax zeigt auch Prozesse an, die innerhalb von Docker laufen.
Es ist Containerisierung, keine Virtualisierung.
Versuchen Sie service nginx status innerhalb und außerhalb des Containers.
root@ip:~# service nginx status
Unit nginx.service could not be found.
root@ip:~# cd /var/discourse/
root@ip:/var/discourse# ./launcher enter app
x86_64 arch detected.
service service root@ip-app:/var/www/discourse# service nginx status
[ ok ] nginx is running.