Discurs - Un forum modern pentru discuții comunitare


Discourse este un software de forum gratuit, open source, modern, bogat în funcții și remarcabil, orientat spre comunitate. Este o platformă puternică, fiabilă și flexibilă, care vine cu o gamă largă de instrumente pentru discuțiile comunitare.

Este conceput pentru a construi platforme de discuții comunitare, liste de corespondență sau sală de chat pentru echipa dvs., clienți, fani, patroni, audiență, utilizatori, susținători, susținători sau prieteni și, cel mai important, se integrează perfect cu restul platformelor dvs. online stabilite.

Caracteristicile discursului:

  • Este ușor de utilizat, simplu și plat.
  • Vine cu un aspect mobil încorporat; are aplicații pentru Android și iOS.
  • Vine cu toate instrumentele moderne de forum și este foarte extensibil prin pluginuri.
  • Acceptă atât conversații private, cât și conversații publice.
  • Suportă discuții care pot fi căutate.
  • Personalizați-i aspectul cu tematica HTML și CSS.
  • Acceptă notificări prin e-mail și răspunsuri prin e-mail.
  • Acceptă diverse metode de autentificare, cum ar fi rețelele sociale, conectare unică sau oAuth 2.0.
  • Acceptă emoji-uri și insigne.
  • Poate fi integrat cu WordPress, Google Analytics, Zendesk, Patreon, Slack, Matomo și multe altele.
  • Oferă webhook-uri și API-uri complete bazate pe JSON pentru o integrare ulterioară.
  • Permite utilizatorilor să marcheze soluțiile ca răspuns oficial.
  • Permite utilizatorilor să voteze ideile preferate.
  • De asemenea, permite utilizatorilor să editeze în colaborare cu istoricul complet al reviziilor.
  • Sprijină atribuirea de subiecte pentru tine sau pentru alții.
  • Acceptă o actualizare cu un singur clic și vine cu suport rapid și precis și multe alte funcții.

Folosim Discourse din ultimii doi ani pentru a sprijini cititorii noștri Linux, puteți consulta Demo Live la următoarea adresă URL înainte de a o instala pe sistemul Linux.

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

Cerințe:

  1. Un VPS dedicat cu un nume de domeniu înregistrat
  2. Un server CentOS 7 cu instalare minimă
  3. Un server Ubuntu 16.04 sau Server Ubuntu 18.04 cu instalare minimă

Discourse este un proiect open source care poate fi implementat pe un server VPS la alegere.

În acest articol, vom explica cum să instalați și să configurați Discourse Forum printr-o metodă acceptată oficial, adică folosind imaginea Docker pe un CentOS 7 VPS sau < serverUbuntu VPS.

Pasul 1: Instalați cea mai recentă versiune de Git și Docker

1. Există un script pregătit pentru a instala cele mai recente versiuni de Docker și Git pe serverul dvs., descărcați și rulați-l așa cum se arată.

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

Dacă scriptul eșuează pe sistemul dvs. dintr-un motiv sau altul, rulați următoarele comenzi pentru a instala cele mai recente versiuni de Git și Docker (din depozitul oficial):

Instalați Docker și Git pe Debian/Ubuntu

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

Instalați Docker și Git pe CentOS/RHEL

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. După ce ați instalat docker, pe Ubuntu/Debian, pornește automat în Systemd , puteți verifica starea serviciului său cu următoarea comandă.

sudo systemctl status docker

Pe CentOS/RHEL, porniți și activați Docker și vedeți starea acestuia.

systemctl start docker
systemctl enable docker
systemctl status docker

Pasul 2: Instalați Discourse pe serverul Linux

3. Apoi creați un director /var/discourse și clonați imaginea oficială Discourse Docker în el utilizând următoarele comenzi.

----------- 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. Acum rulați scriptul de configurare Discourse folosind următoarea comandă.

sudo ./discourse-setup 
OR
./discourse-setup 

Odată executată comanda de mai sus, scriptul va încerca să valideze sistemul dumneavoastră pentru cerințe. Apoi vi se va cere să răspundeți la următoarele întrebări, să furnizați valorile corecte și să le conformați ulterior pentru a genera automat un fișier de configurare 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 ]: 

Odată ce fișierul de configurare este actualizat, va începe descărcarea imaginii de bază Discourse. Întreaga configurare poate dura de la 10 minute până la o jumătate de oră, în funcție de viteza conexiunii la internet; stai pe spate și așteaptă să se termine.

5. Când configurarea este finalizată, containerul Discourse ar trebui să fie în funcțiune. Pentru a verifica acest lucru, verificați toate containerele docker care rulează folosind următoarea comandă.

sudo docker container ls -a
OR
docker container ls -a

Pasul 3: Configurați Nginx pentru Discourse Container

6. În acest pas, acum puteți configura serverul web Nginx și proxy invers (rețineți că acesta este serverul web din afara containerului) să ruleze în fața Container >Discurs. Acest lucru vă permite să rulați alte site-uri web sau aplicații împreună cu containerul Discourse pe același server.

Mai întâi opriți containerul de discurs care rulează folosind următoarea comandă.

sudo ./launcher stop app
OR
./launcher stop app

7. Apoi, modificați fișierul de configurare a containerului de discurs /var/discourse/containers/app.yml pentru a-l seta să asculte într-un fișier special, altul decât portul 80.

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

Apoi modificați secțiunea șablon așa cum se arată mai jos.

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ți secțiunea expune așa cum se arată în captură de ecran.

8. În continuare, trebuie să configurați un bloc de server Nginx pentru a trimite cereri proxy pentru Discurs în /etc/nginx/conf.d /discourse.conf sau /etc/nginx/sites-enabled/discourse.conf.

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

Adăugați aceste setări în el (folosiți propriul nume de domeniu în loc 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;
        }
}

Salvați modificările și părăsiți fișierul. Apoi verificați configurația serverului web Nginx pentru orice eroare de sintaxă, dacă totul este în regulă, porniți serverul web.

sudo nginx -t
sudo systemctl start nginx
OR
systemctl start nginx

9. Acum este timpul să reconstruiți containerul Discourse pentru a aplica modificările făcute recent (acest lucru va elimina vechiul container) și, de asemenea, să reporniți serviciul Nginx pentru a detecta serverul din amonte.

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

Pasul 4: Accesați interfața web a Forumului Discourse

10. După ce totul este configurat, puteți accesa Discurs dintr-un browser web prin numele de domeniu pe care l-ați setat mai sus (pentru cazul nostru, am folosit un domeniu inactiv numit forum.tecmint.lan).

De asemenea, am folosit fișierul /etc/hosts pentru a configura DNS local pe sistemul de testare (unde 192.168.8.105 este adresa serverului din rețeaua locală).

Introdu următoarea adresă URL pentru a accesa Discurs și dați clic pe Înregistrați pentru a crea un nou cont de administrator.

http://forum.tecmint.lan

11. Apoi, alegeți un e-mail pe care să îl utilizați (în cazul în care ați specificat mai multe în timp ce configurați discursul), numele de utilizator și parola, apoi faceți clic pe Înregistrați pentru a crea noul administrator. cont.

12. În continuare, un e-mail de confirmare a contului va fi trimis la adresa de e-mail pe care ați selectat-o (dacă ați furnizat mai multe în timp ce configurați discursul) la pasul anterior. În cazul în care nu primiți e-mailul, asigurați-vă că sistemul dvs. de e-mail funcționează corect (instalați serverul de e-mail Postfix) sau verificați folderul de spam.

Faceți clic pe linkul de confirmare pentru a obține pagina „Bine ați venit la discurs”. Apoi, activează-ți contul, configurează opțiunile implicite Discourse, cum ar fi limba de utilizat, accesează contul de administrator Discourse și administrează forumul de discuții.

Puteți găsi informații suplimentare de pe site-ul Discourse: https://www.discourse.org/

Asta este tot pentru acum! Discourse este un software de discuții comunității deschis, modern și bogat în funcții, cu o gamă largă de instrumente. Utilizați formularul de comentarii de mai jos pentru a împărtăși orice întrebări referitoare la procesul de instalare sau spuneți-ne părerea dvs. despre acest software uimitor de forum.

Dacă sunteți în căutarea pe cineva care să instaleze software-ul de forum comunitar Discourse, luați în considerare noi, deoarece oferim o gamă largă de servicii Linux la prețuri minime corecte, cu asistență gratuită de 14 zile prin e-mail. Solicitați instalarea acum.