¿Cómo abrir vía IP interna?

Estimados expertos,

¡Realmente aprecio sus contribuciones!!

Actualmente he construido Discourse con éxito en mi computadora local y puedo abrirlo mediante localhost:3000. Es genial, incluyendo la creación de temas, publicar contenido, etc.

Principalmente, seguí la guía aquí. ¡Es realmente increíble!

Sin embargo, no puedo acceder mediante mi IP interna (es decir, la IP de la red local). Por ejemplo, 10.1.2.139 (algo así). Quiero poder acceder a este foro desde diferentes dispositivos (es decir, desde mi portátil).

Reproducción

Obtén el script bash (install_discourse.sh) desde: install-rails/linux at main · discourse/install-rails · GitHub

chmod +x install_discourse.sh
sudo ./install_discourse.sh

git clone https://github.com/discourse/discourse.git ~/discourse
sudo -u postgres createuser -s "$USER"
cd ~/discourse

source ~/.bashrc
bundle install

bundle exec rake db:create 
bundle exec rake db:migrate
RAILS_ENV=test bundle exec rake db:create db:migrate

bundle exec rake autospec (esto podría generar errores.)

Iniciar el servidor:

bundle exec rails server
o
bundle exec rails server --binding=0.0.0.0

Crear un administrador

RAILS_ENV=development bundle exec rake admin:create

Configurar el correo

mailcatcher --http-ip 0.0.0.0

¿Tienen alguna sugerencia para acceder mediante la IP local?
Muchas gracias.

Saludos cordiales,
Chieh

2 Me gusta

¿Qué comando utilizaste para iniciar el servidor? Debes usar este:

bundle exec rails server --binding=0.0.0.0
3 Me gusta

Yo también he tenido problemas para que mi máquina de desarrollo escuche la dirección IP con una instalación reciente de desarrollo en Ubuntu.

Estoy bastante seguro de que hice lo que Simon recomendó, además de usar bin/rails.

2 Me gusta

Estimado @simonk,

¡Gracias por tu respuesta!
He estado usando Ctrl+C para detener el proceso en la terminal y luego iniciar con el comando bundle exec rails server --binding=0.0.0.0, pero parece que aún no funciona.

Me pregunto cuál es la forma correcta de detenerlo y volver a iniciarlo. Porque noté que, incluso después de cerrar la terminal, todavía puedo acceder al foro. Además, no estoy construyendo mediante un contenedor Docker, por lo que no tengo el launcher disponible para usar el comando ./launcher stop app. También he probado con kill $(cat tmp/pids/server.pid), pero me respondió: cat: tmp/pids/server.pid No such file or directory.

Agradecería mucho cualquier pista que puedas proporcionarme.

¡Muchas gracias!

Saludos cordiales,
Chieh

1 me gusta

(Aviso: No he ejecutado Rails de esta manera; en su lugar, utilizo el entorno de desarrollo basado en Docker)

¿Estás seguro de esto? Me ha ocurrido antes porque mi navegador había almacenado en caché la aplicación Discourse y me permitía navegar entre temas, aunque el proceso del servidor no estuviera en ejecución. Podrías probar usando curl en su lugar:

curl http://localhost:3000

También podrías verificar si hay algún proceso ruby en ejecución:

ps -ef | grep ruby

La herramienta netstat puede indicarte qué procesos están escuchando en qué puertos. Por ejemplo, si ejecuto un servidor web trivial de Python así:

$ python3 -m http.server 8099
Servidor HTTP en 0.0.0.0 puerto 8099 (http://0.0.0.0:8099/) ...

Luego ejecuto netstat:

$ netstat -tlp
Conexiones de Internet activas (solo servidores)
Proto Recv-Q Send-Q Dirección local      Dirección remota   Estado    PID/Nombre del programa
tcp        0      0 0.0.0.0:8099     0.0.0.0:*         ESCUCHA   2511478/python3
...

Esto me indica que el PID 2511478 está escuchando en el puerto 8099 en todas las interfaces (0.0.0.0 significa “todas las interfaces”). Para obtener un poco más de información sobre ese proceso:

$ 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
3 Me gusta

Hola @simonk,

¡Gracias por la información! Es muy útil. Además, ya he migrado a docker-container de esta manera.
Voy a probar más en Discourse. Estoy muy entusiasmado al respecto.

¡Gracias de nuevo!

Saludos cordiales,
Chieh

1 me gusta

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.