Je vous remercie sincèrement pour vos contributions !!
Actuellement, j’ai réussi à compiler Discourse sur mon ordinateur local et je peux y accéder via localhost:3000. C’est formidable, y compris pour créer des sujets, publier des messages, etc.
Cependant, je ne peux pas y accéder via mon adresse IP interne (c’est-à-dire une adresse IP de réseau local). Par exemple, 10.1.2.139 (un type d’adresse IP similaire). Je souhaite accéder à ce forum depuis différents appareils (c’est-à-dire depuis mon ordinateur portable).
J’ai moi aussi eu des difficultés à faire en sorte que ma machine de développement écoute l’adresse IP avec une installation récente de développement sur Ubuntu.
Je suis presque certain d’avoir suivi les recommandations de Simon, ainsi que d’avoir utilisé bin/rails.
Merci pour votre réponse !!
J’utilise Ctrl+C pour arrêter le processus dans le terminal, puis je le relance avec la commande bundle exec rails server --binding=0.0.0.0, mais cela ne semble toujours pas fonctionner.
Je me demande comment l’arrêter correctement pour le relancer ensuite ? J’ai remarqué que même après avoir fermé le terminal, je peux toujours accéder au forum. De plus, je n’ai pas construit via un conteneur Docker, donc je n’ai pas de launcher pour utiliser la commande ./launcher stop app. J’ai également essayé kill $(cat tmp/pids/server.pid), mais la réponse était cat: tmp/pids/server.pid No such file or directory.
Je vous serais très reconnaissant pour tout indice que vous pourriez fournir.
En êtes-vous sûr ? Je me suis déjà fait avoir parce que mon navigateur avait mis en cache l’application Discourse et me permettait de naviguer entre les sujets, même si le processus serveur n’était pas en cours d’exécution. Vous devriez peut-être tester avec curl à la place :
curl http://localhost:3000
Vous pouvez également vérifier si des processus ruby sont en cours d’exécution :
ps -ef | grep ruby
L’outil netstat peut vous indiquer quels processus écoutent sur quels ports. Par exemple, si j’exécute un serveur web Python trivial comme ceci :
$ python3 -m http.server 8099
Serving HTTP on 0.0.0.0 port 8099 (http://0.0.0.0:8099/) ...
Ensuite, exécutez netstat :
$ 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
...
Cela m’indique que le PID 2511478 écoute sur le port 8099 sur toutes les interfaces (0.0.0.0 signifie « toutes les interfaces »). Pour obtenir un peu plus d’informations sur ce processus :
$ 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
Merci pour ces informations ! Elles sont très utiles. De plus, j’ai déjà migré vers docker-container de cette manière.
Je vais essayer davantage avec Discourse. Je suis vraiment enthousiaste à ce sujet.