Recientemente intenté instalar Discourse en mi servidor Debian, todo salió bien excepto que no podía acceder al sitio. Intenté cambiar el puerto para acceder a él, pero solo aparecía Nginx. Así que descubrí el problema y traté de configurar una IP personalizada con una red personalizada que apuntara a mi red, pero no pude acceder, seguía dándome errores. Este es el error que obtengo:
./launcher start app --docker-args --network discourse_back --ip 192.168.1.4
Se detecta la arquitectura x86_64.
docker: Error response from daemon: network -i not found.
Tu instalación de Docker no está funcionando correctamente
Ver: https://meta.discourse.org/t/docker-error-on-bootstrap/13657/18?u=sam
También lo intenté antes usando hello-world y funcionó:
docker run -it --network discourse_back --ip 192.168.1.4 hello-world
Hello from Docker!
. . .
¿Alguien tiene una idea de cómo solucionarlo? ¡Gracias de antemano!
Así que finalmente lo puse en marcha, pero ahora aparece “Welcome to nginx”, pero introduje mi nombre de host “discourse.simonz.local” (que también está escrito en app.yml en
Si pretendes que esta instancia esté disponible en Internet, usar un dominio .local en app.yml romperá las cosas. Quizás esto es algo que solo pretendes usar en casa o solo para pruebas, solo pensé que valía la pena mencionarlo.
Suponiendo que tu red Docker funciona correctamente, haciendo que el contenedor sea accesible en esa dirección IP desde fuera de la máquina host, también necesitarías que DNS apunte discourse.simonz.local a esa dirección IP.
Parece que lo que está sucediendo es que el dominio se resuelve en la máquina host y no estás especificando el puerto (por ejemplo, discourse.simonz.local:1234) al intentar acceder a él, por lo que simplemente llega a nginx en lugar del contenedor docker.
Si quieres que Discourse esté disponible en un puerto diferente, probablemente no lo necesites en una dirección IP diferente. Si quieres que esté disponible en el puerto estándar, así como nginx en el puerto estándar, necesitas DNS para dirigirte a la IP correcta o necesitas nginx para proxy de Discourse.
Los dominios .local suelen ser anunciados por el sistema basándose en su nombre de host configurado. Discourse realmente no necesita hacer eso normalmente, por lo que el contenedor podría no tener nada para hacerlo.
Si quieres ir por la ruta de puerto estándar, IP diferente, DNS, eso está realmente fuera del alcance de Discourse y su configuración dependerá de varios factores en tu red.
Si tu objetivo es simplemente tener algo disponible en nginx, así como Discourse en el mismo host, te recomiendo el enfoque de proxy enlazado anteriormente. Aunque técnicamente es una instalación no compatible, es una configuración más común y en la que más gente podrá ayudar.
Si solo lo estás configurando localmente de forma temporal para probarlo, simplemente iniciaría una máquina virtual en lugar de intentar que funcione junto con nginx.
A la máquina virtual se le puede asignar su propia IP, es probable que se le asigne automáticamente una dirección .local y puedes hacer una instalación estándar de Discourse dentro de ella.
Cuando termines, desecha la máquina virtual y no tendrás que preocuparte por revertir ningún cambio en nginx ni en nada más.
Uso la versión de docker compose, parece que viene con un nginx y ya está dentro de una VM, pero estoy intentando ejecutarlo con la misma VM, pero una cosa sale como ..1.3 (mi otro sitio) y la otra como ..1.4 (discourse).
Me acabo de dar cuenta de que sí, ya hice la instalación estándar, solo quiero cambiar la IP a la que responde. Mi IP predeterminada es 192.168.1.3, pero quiero que reaccione a 192.168.1.4. Ambas IPs ya están configuradas en el dispositivo.
Si la VM tiene dos direcciones IP, no necesitas hacer nada con la dirección IP del contenedor de Docker, solo necesitas enrutamiento de firewall para que …1.3:80/443 vaya al host y …1.4:80/443 vaya al contenedor de Docker.
Si esto es Linux, AFAIK iptables y ufw son los más comunes. Probablemente necesitarías consultar la documentación o preguntar en sus comunidades para obtener ayuda sobre cómo configurar ese enrutamiento.
A menos que necesites probar este tipo de configuración para donde finalmente quieras instalar Discourse, todavía recomendaría ejecutar una segunda VM para esta prueba. Cualquier complejidad de ejecutar Discourse junto con otro software HTTP/HTTPS desaparece al ejecutarlo dentro de su propia VM.
Bueno, gracias de todos modos, así que pude iniciarlo, pero no obtengo respuesta, probablemente lo arruiné, pero gracias por ayudar, lo intentaré de nuevo, tal vez obtenga un nuevo resultado, gracias a todos por la ayuda y que tengan un gran día ^^