Derzeit habe ich Discourse erfolgreich auf meinem lokalen Computer installiert und kann es über localhost:3000 öffnen. Das funktioniert hervorragend, einschließlich Themen erstellen, Beiträge verfassen usw.
Hauptsächlich habe ich mich an diese Anleitung gehalten: hier. Das ist wirklich großartig!
Allerdings kann ich es über meine interne IP-Adresse (d. h. die IP-Adresse des lokalen Netzwerks) nicht öffnen. Zum Beispiel: 10.1.2.139 (eine IP-Adresse dieser Art). Ich möchte dieses Forum auf verschiedenen Geräten öffnen können (d. h. von meinem Laptop darauf zugreifen).
Ich hatte ebenfalls Schwierigkeiten, meine Entwicklungsumgebung dazu zu bringen, auf die IP-Adresse zu hören, nachdem ich kürzlich eine Entwicklungsversion auf Ubuntu installiert habe.
Ich bin mir ziemlich sicher, dass ich das getan habe, was Simon empfohlen hat, und zusätzlich bin/rails verwendet habe.
vielen Dank für deine Antwort!!
Ich habe Strg+C verwendet, um den Prozess im Terminal zu stoppen, und den Server mit dem Befehl bundle exec rails server --binding=0.0.0.0 neu gestartet, aber es scheint immer noch nicht zu funktionieren.
Ich frage mich, wie man ihn korrekt stoppt und dann wieder startet? Denn ich habe festgestellt, dass ich das Forum auch dann noch erreichen kann, wenn ich das Terminal bereits geschlossen habe. Außerdem habe ich nicht über einen Docker-Container gebaut, sodass ich keinen launcher habe, um den Befehl ./launcher stop app auszuführen. Ich habe auch versucht, kill $(cat tmp/pids/server.pid) auszuführen, aber es kam die Meldung: cat: tmp/pids/server.pid No such file or directory.
Ich wäre dir sehr dankbar, wenn du mir einen Hinweis geben könntest.
Bist du dir da sicher? Ich bin schon einmal darauf hereingefallen, weil mein Browser die Discourse-Anwendung zwischengespeichert hatte und es mir ermöglichte, zwischen Themen zu navigieren, obwohl der Serverprozess nicht lief. Du könntest stattdessen curl zum Testen verwenden:
curl http://localhost:3000
Du könntest auch prüfen, ob irgendwelche ruby-Prozesse laufen:
ps -ef | grep ruby
Das Tool netstat kann dir sagen, welche Prozesse auf welchen Ports lauschen. Wenn ich beispielsweise einen simplen Python-Webserver so starte:
$ python3 -m http.server 8099
Serving HTTP on 0.0.0.0 port 8099 (http://0.0.0.0:8099/) ...
Dann führe netstat aus:
$ netstat -tlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:8099 0.0.0.0:* LISTEN 2511478/python3
...
Das sagt mir, dass die PID 2511478 auf Port 8099 auf allen Schnittstellen lauscht (0.0.0.0 bedeutet „alle Schnittstellen`). Um etwas mehr Informationen über diesen Prozess zu erhalten:
$ ps -fp 2511478
UID PID PPID C STIME TTY TIME CMD
simon 2511478 1250783 0 09:53 pts/11 00:00:00 python3 -m http.server 8099
vielen Dank für die Informationen! Das ist sehr hilfreich. Übrigens habe ich mich bereits auf diese Weise auf docker-container umgestellt.
Ich werde mich weiter mit Discourse beschäftigen. Ich freue mich wirklich sehr darauf.