Discurso - Un foro moderno para la discusión comunitaria


Discourse es un software de foro orientado a la comunidad gratuito, de código abierto, moderno, rico en funciones y notable. Es una plataforma potente, confiable y flexible que viene con una amplia gama de herramientas para las discusiones de la comunidad.

Está diseñado para crear plataformas de discusión de la comunidad, listas de correo o salas de chat para su equipo, clientes, fanáticos, patrocinadores, público, usuarios, defensores, simpatizantes o amigos y, lo que es más importante, se integra perfectamente con el resto de sus plataformas en línea establecidas.

  • It’s easy-to-use, a simple and flat.
  • It comes with a built-in mobile layout; has apps for Android and iOS.
  • It comes with all modern forum tools and is highly extensible through plugins.
  • Supports both private ad public conversations.
  • Supports searchable discussions.
  • Customize its look and feel with HTML and CSS theming.
  • Supports email notifications and email replies.
  • Supports various authentication methods such as social networks, single sign on, or oAuth 2.0.
  • Supports emojis and badges.
  • It can be integrated with WordPress, Google Analytics, Zendesk, Patreon, Slack, Matomo, and more.
  • Offers webhooks and simple JSON based comprehensive APIs for further integration.
  • Allows users to mark solutions as the official answer.
  • Allows users to vote up favorite ideas.
  • Also allows users to collaboratively edit with full revision history.
  • Supports assigning of topics to yourself or others.
  • Supports a single-click upgrade, and comes with quick and accurate support, and many other features.

Estamos utilizando Discourse desde los últimos dos años para admitir nuestros lectores de Linux. Puede consultar la demostración en vivo en la siguiente URL antes de instalarla en el sistema Linux.

Live Demo URL: http://linuxsay.com/
  1. A dedicated VPS with a registered domain name
  2. A CentOS 7 Server with Minimal Install
  3. A Ubuntu 16.04 Server or Ubuntu 18.04 Server with Minimal Install

Discourse es un proyecto de código abierto que se puede implementar en un servidor VPS de su elección.

Puedes obtener un VPS RAM de 2GB de Linode para 0 , pero no está administrado. Si desea un VPS administrado, luego use nuestra nueva oferta de promoción de BlueHost, obtendrá un 40% de hospedaje con un dominio gratuito de por vida. Si obtienes un VPS administrado, probablemente instalarán Discurso por ti.

En este artículo explicaremos cómo instalar y configurar Discourse Forum a través de un método con soporte oficial, es decir, usar Docker en un CentOS 7 VPS o < fuerte> Ubuntu VPS servidor.

Paso 1: Instala la última versión de Git y Docker

1. Hay un script preparado para instalar las últimas versiones de Docker y Git en su servidor, descargarlo y ejecutarlo como se muestra.

# wget -qO- https://get.docker.com/ | sh

Si el script falla en su sistema por una razón u otra, ejecute los siguientes comandos para instalar las últimas versiones de Git y Docker (desde el repositorio oficial):

$ sudo apt install git apt-transport-https ca-certificates curl software-properties-common
$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
$ sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu xenial  stable"
$ sudo apt update
$ sudo apt install docker-ce
# yum install -y git yum-utils device-mapper-persistent-data lvm2
# yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
# yum install docker-ce

2. Una vez que haya instalado ventana acoplable , en Ubuntu/Debian , se activa el inicio automático en Systemd , puede verificar su estado de servicio con el siguiente comando.

$ sudo systemctl status docker

En CentOS/RHEL , inicie y habilite Docker y vea su estado.

# systemctl start docker
# systemctl enable docker
# systemctl status docker

Paso 2: Instalar Discourse en el servidor Linux

3. A continuación, cree un directorio /var/discourse y clone la imagen oficial de Discourse Docker usando los siguientes comandos.

----------- On Debian/Ubuntu ----------- 
$ sudo mkdir /var/discourse
$ sudo git clone https://github.com/discourse/discourse_docker.git /var/discourse
$ cd /var/discourse

----------- On CentOS/RHEL -----------
# mkdir /var/discourse
# git clone https://github.com/discourse/discourse_docker.git /var/discourse
# cd /var/discourse

4. Ahora ejecute el script de configuración Discurso usando el siguiente comando.

$ sudo ./discourse-setup 
OR
# ./discourse-setup 

Una vez que ejecute el comando anterior, el script intentará validar su sistema para los requisitos. Luego se le pedirá que responda las siguientes preguntas, proporcione los valores correctos y los cumpla posteriormente para generar automáticamente un archivo de configuración app.yml .

Hostname for your Discourse? [discourse.example.com]: forum.tecmint.lan 
Email address for admin account(s)? [[email protected]]: admin.tecmint.lan
SMTP server address? [smtp.example.com]: smtp.tecmint.lan
SMTP port? [587]: 587
SMTP user name? [[email protected]]: [email protected]
SMTP password? []: password-here
Let's Encrypt account email? (ENTER to skip) [[email protected]]: 

Una vez que se actualice el archivo de configuración, comenzará a descargar la imagen base de Discurso . La configuración completa puede demorar entre 10 minutos y media hora, según la velocidad de su conexión a Internet; Solo siéntate y espera a que se complete.

5. Cuando se complete la configuración, el contenedor Discourse debe estar en funcionamiento. Para verificarlo, verifique todos los contenedores de la ventana acoplable en ejecución usando el siguiente comando.

$ sudo docker container ls -a
OR
# docker container ls -a

Paso 3: Configurar Nginx para Discourse Container

6. En este paso, ahora puede configurar el servidor web Nginx y el proxy inverso (tenga en cuenta que este es el servidor web fuera del contenedor) para ejecutarse frente a su Discurso contenedor. Esto le permite ejecutar otros sitios web o aplicaciones junto con el contenedor Discourse en el mismo servidor.

Primero detenga el contenedor de discurso en ejecución usando el siguiente comando.

$ sudo ./launcher stop app
OR
# ./launcher stop app

7. A continuación, modifique el archivo de configuración del contenedor de su discurso /var/discourse/containers/app.yml para configurarlo para que escuche en un archivo especial, que no sea el puerto 80 .

$ sudo vim containers/app.yml
OR
# vim containers/app.yml

Luego modifique la sección template como se muestra a continuación.

templates:
  - "templates/cron.template.yml"
  - "templates/postgres.template.yml"
  - "templates/redis.template.yml"
  - "templates/sshd.template.yml"
  - "templates/web.template.yml"
  - "templates/web.ratelimited.template.yml"
- "templates/web.socketed.template.yml"

Y comente la sección expose como se muestra en la captura de pantalla.

8. A continuación, debe configurar un Nginx bloque de servidor para las solicitudes de proxy para Discurso en /etc/nginx/conf.d /discourse.conf o /etc/nginx/sites-enabled/discourse.conf .

$ sudo vim /etc/nginx/conf.d/discourse.conf
OR
# vim /etc/nginx/conf.d/discourse.conf

Agrega estas configuraciones en él, (usa tu propio nombre de dominio en lugar de forum.tecmint.lan ).

server {
        listen 80;
        server_name  forum.tecmint.lan;

        location / {
                proxy_pass http://unix:/var/discourse/shared/standalone/nginx.http.sock:;
                proxy_set_header Host $http_host;
                proxy_http_version 1.1;
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                proxy_set_header X-Forwarded-Proto $scheme;
        }
}

Guarde los cambios y salga del archivo. Luego revise la configuración del servidor web Nginx para ver si hay algún error de sintaxis, si todo está bien, inicie el servidor web.

$ sudo nginx -t
$ sudo systemctl start nginx
OR
# systemctl start nginx

9. Ahora es el momento de reconstruir el contenedor de Discourse para aplicar los cambios realizados recientemente (esto eliminará el contenedor antiguo), y también reiniciar el servicio Nginx para detectar el servidor ascendente.

$ sudo ./launcher rebuild app
$ sudo systemctl restart nginx
OR
# ./launcher rebuild app
# systemctl restart nginx

Paso 4: Acceso a la Web de la interfaz de usuario del Foro de Discurso

10. Una vez que todo esté configurado, puede acceder a Discurso desde un navegador web a través del nombre de dominio que estableció anteriormente (para nuestro caso, lo hemos usado un dominio ficticio llamado forum.tecmint.lan ).

También hemos utilizado el archivo /etc/hosts para configurar el DNS local en el sistema de prueba (donde 192.168.8.105 es la dirección del servidor en la red local).

Escriba la siguiente URL para acceder a Discurso y haga clic en Registrarse para crear una nueva cuenta de administrador.

http://forum.tecmint.lan

11. Luego, elija un correo electrónico para usar (en caso de que haya especificado más de uno al configurar el discurso), nombre de usuario y contraseña, luego haga clic en Registrarse para crear el nuevo administrador cuenta.

12. A continuación, se enviará un correo electrónico de confirmación de la cuenta a la dirección de correo electrónico que seleccionó (si proporcionó más de uno al configurar el discurso) en el paso anterior. En caso de que no reciba el correo electrónico, asegúrese de que su sistema de correo electrónico funciona correctamente (instale el servidor de correo postfix) o revise su carpeta de correo no deseado.

Haga clic en el enlace de confirmación para obtener la página ‘ Discourse Welcome ‘. Luego active su cuenta, configure las opciones predeterminadas de Discurso , como el idioma para usar, acceda a su cuenta de administrador de Discourse y administre su foro de discusión.

Puede encontrar información adicional en el sitio web de Discourse: https://www.discourse.org/

¡Eso es todo por ahora! Discourse es un software de debate comunitario abierto, moderno y rico en funciones con una amplia gama de herramientas. Utilice el formulario de comentarios a continuación para compartir cualquier consulta relacionada con el proceso de instalación o comentarnos sobre este increíble software de foro.

Si está buscando a alguien para instalar el Discourse software del foro de la comunidad, consúltenos, porque ofrecemos una amplia gama de servicios de Linux a tarifas mínimas justas con 14 días de asistencia gratuita por correo electrónico. Solicite la instalación ahora.