Discurs: un fòrum modern per al debat comunitari


Discourse és un programari de fòrums gratuït, de codi obert, modern, ric en funcions i destacable, orientat a la comunitat. És una plataforma potent, fiable i flexible que inclou una àmplia gamma d'eines per a debats de la comunitat.

Està dissenyat per crear plataformes de discussió de la comunitat, llista de correu o sala de xat per al vostre equip, clients, aficionats, mecenes, públic, usuaris, defensors, simpatitzants o amics i, el més important, s'integra perfectament amb la resta de les vostres plataformes en línia establertes.

  • És fàcil d'utilitzar, senzill i pla.
  • Ve amb un disseny mòbil integrat; té aplicacions per a Android i iOS.
  • Ve amb totes les eines modernes del fòrum i és molt extensible mitjançant connectors.
  • Admet tant converses privades com públiques.
  • Admet debats amb cerca.
  • Personalitzeu-ne l'aspecte amb la temàtica HTML i CSS.
  • Admet notificacions per correu electrònic i respostes per correu electrònic.
  • Admet diversos mètodes d'autenticació, com ara xarxes socials, inici de sessió únic o oAuth 2.0.
  • Admet emojis i insígnies.
  • Es pot integrar amb WordPress, Google Analytics, Zendesk, Patreon, Slack, Matomo i molt més.
  • Ofereix webhooks i API completes basades en JSON per a una major integració.
  • Permet als usuaris marcar les solucions com a resposta oficial.
  • Permet als usuaris votar les idees preferides.
  • També permet als usuaris editar de manera col·laborativa amb l'historial de revisions complet.
  • Admet l'assignació de temes a tu mateix o als altres.
  • Admet una actualització amb un sol clic i inclou un suport ràpid i precís i moltes altres funcions.

Estem utilitzant Discourse des dels últims dos anys per donar suport als nostres lectors Linux, podeu consultar la demostració en directe a l'URL següent abans d'instal·lar-lo al sistema Linux.

Live Demo URL: http://linuxsay.com/

  1. Un VPS dedicat amb un nom de domini registrat
  2. Un servidor CentOS 7 amb instal·lació mínima
  3. Un servidor Ubuntu 16.04 o un servidor Ubuntu 18.04 amb instal·lació mínima

Discourse és un projecte de codi obert que es pot desplegar en un servidor VPS de la vostra elecció.

En aquest article explicarem com instal·lar i configurar Discourse Forum mitjançant un mètode oficialment compatible, és a dir, utilitzant la imatge Docker en un servidor CentOS 7 VPS o Ubuntu VPS.

Pas 1: instal·leu la darrera versió de Git i Docker

1. Hi ha un script preparat per instal·lar les últimes versions de Docker i Git al vostre servidor, descarregar-lo i executar-lo tal com es mostra.

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

Si l'script falla al vostre sistema per un motiu o un altre, executeu les ordres següents per instal·lar les últimes versions de Git i Docker (des del repositori 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. Un cop hàgiu instal·lat Docker, a Ubuntu/Debian, s'activa l'inici automàtic a Systemd, podeu comprovar l'estat del seu servei amb l'ordre següent.

$ sudo systemctl status docker

A CentOS/RHEL, inicieu i activeu Docker i visualitzeu-ne l'estat.

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

Pas 2: instal·leu Discourse al servidor Linux

3. A continuació, creeu un directori /var/discourse i cloneu-hi la imatge oficial del Discourse Docker utilitzant les ordres següents.

----------- 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. Ara executeu l'script de configuració de Discourse amb l'ordre següent.

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

Un cop executada l'ordre anterior, l'script intentarà validar el vostre sistema per als requisits. Aleshores se us demanarà que respongueu les preguntes següents, que proporcioneu els valors correctes i que els conformeu més endavant per generar automàticament un fitxer de configuració app.yml.

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

Un cop actualitzat el fitxer de configuració, començarà a descarregar la imatge base del discurs. Tota la configuració pot trigar entre 10 minuts i mitja hora, depenent de la velocitat de connexió a Internet; simplement seure i esperar que s'acabi.

5. Quan s'hagi completat la configuració, el contenidor de Discurs hauria d'estar en funcionament. Per verificar-ho, comproveu tots els contenidors de Docker en execució mitjançant l'ordre següent.

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

Pas 3: configureu Nginx per al contenidor de discurs

6. En aquest pas, ara podeu configurar el servidor web Nginx i el servidor intermediari invers (tingueu en compte que aquest és el servidor web fora del contenidor) perquè s'executi davant del vostre contenidor de Discurs. Això us permet executar altres llocs web o aplicacions juntament amb el contenidor Discourse al mateix servidor.

Primer atureu el contenidor del discurs en execució mitjançant la següent comanda.

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

7. A continuació, modifiqueu el fitxer de configuració del contenidor de discurs /var/discourse/containers/app.yml per configurar-lo perquè escolti en un fitxer especial, diferent del port 80.

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

A continuació, modifiqueu la secció plantilla tal com es mostra a continuació.

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"

I comenta la secció exposar tal com es mostra a la captura de pantalla.

8. A continuació, heu de configurar un bloc de servidor Nginx per a les sol·licituds de servidor intermediari de Discourse al fitxer /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

Afegiu-hi aquests paràmetres (utilitzeu el vostre propi nom de domini en lloc 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;
        }
}

Deseu els canvis i sortiu del fitxer. A continuació, comproveu la configuració del servidor web Nginx per detectar qualsevol error de sintaxi, si tot està bé, inicieu el servidor web.

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

9. Ara és el moment de reconstruir el contenidor del discurs per aplicar els canvis fets recentment (això eliminarà el contenidor antic) i també de reiniciar el servei Nginx per detectar el servidor amunt.

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

Pas 4: accediu a la interfície d'usuari web del fòrum del discurs

10. Un cop tot configurat, podeu accedir a Discourse des d'un navegador web mitjançant el nom de domini que heu definit anteriorment (per al nostre cas, hem utilitzat un domini simulat anomenat forum.tecmint.lan).

També hem utilitzat el fitxer /etc/hosts per configurar el DNS local al sistema de proves (on 192.168.8.105 és l'adreça del servidor a la xarxa local).

Escriviu l'URL següent per accedir al Discurs i feu clic a Registre per crear un nou compte d'administrador.

http://forum.tecmint.lan

11. A continuació, trieu un correu electrònic per utilitzar (en cas que n'heu especificat més d'un durant la configuració del discurs), nom d'usuari i contrasenya i, a continuació, feu clic a Registre per crear el nou compte d'administrador.

12. A continuació, s'enviarà un correu electrònic de confirmació del compte a l'adreça de correu electrònic que heu seleccionat (si n'heu proporcionat més d'una durant la configuració del discurs) al pas anterior. En cas que no rebeu el correu electrònic, assegureu-vos que el vostre sistema de correu electrònic funcioni correctament (instal·leu el servidor de correu Postfix) o comproveu la vostra carpeta de correu brossa.

Feu clic a l'enllaç de confirmació per obtenir la pàgina Benvinguda del discurs. A continuació, activeu el vostre compte, configureu les opcions predeterminades de Discourse, com ara l'idioma a utilitzar, accediu al vostre compte d'administrador de Discourse i administreu el vostre fòrum de discussió.

Podeu trobar informació addicional al lloc web del Discours: https://www.discourse.org/

Això és tot per ara! Discourse és un programari de discussió comunitari obert, modern i ric en funcions amb una àmplia gamma d'eines. Utilitzeu el formulari de comentaris a continuació per compartir qualsevol consulta sobre el procés d'instal·lació o per donar-nos la vostra opinió sobre aquest fantàstic programari del fòrum.

Si busqueu algú per instal·lar el programari del fòrum de la comunitat Discourse, considereu-nos, perquè oferim una àmplia gamma de serveis Linux a preus mínims raonables amb assistència gratuïta de 14 dies per correu electrònic. Sol·liciteu la instal·lació ara.