Instalați discursul pe CentOS 7

Discursul este o nouă soluție de forum open-source simplă, curată și simplă. Este implementat cu Ruby on Rails, o bază de date Postgres și un cache server Redis. Acest tutorial descrie cum se instalează Discursul pe un Vultr VPS cu CentOS 7.

cerinţe

  • Vultr VPS cu minim 1 GB RAM.
  • CentOS 7 x64 instalat pe VPS.

Configurați fișierul swap

Trebuie să configurați swap-ul pentru un VPS RAM de 1 GB. Dacă VPS-ul dvs. are mai mult de 1 GB RAM, puteți sări peste acest pas. Vom crea un swapfile de 2 GB pentru VPS de 1 GB RAM.

  1. Creați swapfile.

    dd if=/dev/zero of=/swapfile bs=1M count=2048
    mkswap /swapfile
    chmod 600 /swapfile
    
  2. Editează fstab pentru a adăuga swapfile în tabelul sistemelor de fișiere.

    Deschideți fstab cu vi:

    vi /etc/fstab
    

    Adăugați următoarea linie în fișier:

    /swapfile       swap    swap    defaults      0       0
    
  3. Setați politica de utilizare a swap-urilor. Folosiți swapfile numai atunci când memoria sistemului este scăzută.

    sysctl -w vm.swappiness=10
    echo vm.swappiness = 10 | tee -a /etc/sysctl.conf
    sysctl vm.vfs_cache_pressure=60
    echo vm.vfs_cache_pressure = 60 | tee -a /etc/sysctl.conf
    
  4. Activați swapfile.

    mount -a
    swapon -a
    
  5. Verificați starea de schimb.

    swapon -s
    

    Dacă swapfile a fost activat, veți vedea următoarele informații.

    Filename                    Type    Size    Used    Priority
    /swapfile                  file     2097148 0       -1
    

Instalați Docker

Rulați comanda de mai jos pentru a instala Docker pe CentOS 7.

yum install docker

Dacă ați dezactivat SELinux, ar fi bine să îl dezactivați și în docker.

vi /etc/sysconfig/docker

Comentează linia 4.

#OPTIONS='--selinux-enabled'

Porniți serviciul de andocare.

systemctl start docker
systemctl enable docker

Vă rugăm să rețineți că dacă reporniți firewalld, veți avea nevoie și de repornirea docker-ului. Deoarece firewalld va elimina lanțul docker din iptables atunci când este repornit.

Instalați discursul

Creați un folder numit discoursesub /varși clonați depozitul Discurs.

mkdir /var/discourse
git clone https://github.com/discourse/discourse_docker.git /var/discourse

Accesați discoursefolderul.

cd /var/discourse

Copiați fișierul de șablon de configurare discurs în folderul containere.

cp samples/standalone.yml containers/app.yml

Configurați discursul

  1. Deschideți app.ymlcu vi.

     vi containers/app.yml
    
  2. Dacă utilizați un VPS de 1 GB, setați bufferul partajat db ca 128 MB app.yml.

    db_shared_buffers: "128MB"
    
  3. Modificați UNICORN_WORKERSla 2 pentru o instanță RAM de 1 GB.

    ## With 2GB we recommend 3-4 workers, with 1GB only 2
    UNICORN_WORKERS: 2
    
  4. Setați adresa dvs. de e-mail pentru contul de admin. Veți avea nevoie de acest e-mail pentru a înregistra contul de administrator pe forumul dvs. Discurs.

    DISCOURSE_DEVELOPER_EMAILS: 'you@youremail.com'
    
  5. Setați numele de domeniu pentru Discurs. De exemplu, am setat-o ​​ca discourse.example.com, asta înseamnă că ar fi accesibil la adresa URL http://discourse.example.com/.

    ## TODO: The domain name this Discourse instance will respond to
    DISCOURSE_HOSTNAME: 'discourse.example.com'
    
  6. Configurați serverul dvs. de poștă pentru discurs.

    Dacă serverul dvs. de poștă este pe același server cu Discurs, configurați-l după cum urmează.

    DISCOURSE_SMTP_ADDRESS: smtp.example.com                               # (mandatory)
    DISCOURSE_SMTP_PORT: 587                                                              # (optional)
    DISCOURSE_SMTP_USER_NAME: YOUR_EMAIL_ACCOUNT                # (optional)
    DISCOURSE_SMTP_PASSWORD: YOURPASSWORD                             # (optional)
    DISCOURSE_SMTP_ENABLE_START_TLS: flase                                    # (optional, default true)
    DISCOURSE_SMTP_OPENSSL_VERIFY_MODE: none
    

    Dacă utilizați un server SMTP de la distanță, vă rugăm să modificați app.ymlurmătoarele.

    DISCOURSE_SMTP_ADDRESS: smtp.example.com                               # (mandatory)
    DISCOURSE_SMTP_PORT: 587                                                              # (optional)
    DISCOURSE_SMTP_USER_NAME: your@example.com                          # (optional)
    DISCOURSE_SMTP_PASSWORD: YOURPASSWORD                             # (optional)
    DISCOURSE_SMTP_ENABLE_START_TLS: true                                     # (optional, default true)
    
  7. Salvați și ieșiți app.yml.

Bootstrap și începe Discursul

Rulați comanda de mai jos pentru bootstrap Discourse.

./launcher bootstrap app

După finalizarea procesului de pornire, începeți Discursul.

./launcher start app

Deschideți Discurs în browser

Pe computerul client, introduceți numele de domeniu pe care l-ați configurat pentru Discurs app.yml. Vei vedea propria instanță a discursului.

Depanare

  • În mod implicit, Docker va asculta portul 80. Dacă portul 80 a fost folosit deja de Nginx sau Apache, trebuie să mutați serviciul în alt port; sau schimbați Docker în alt port. De exemplu, schimbați „80:80” în „8080: 80” în app.ymlpentru a face Docker să asculte pe portul 8080.
  • Pe VPS de 1 GB RAM, este posibil să nu actualizați Discursul la noua versiune și veți vedea un „502 Bad Gateway” când accesați Discurs. Soluția simplă pentru această problemă este să rulați ./launcher rebuild apppentru a reconstrui instanța dvs. Discurs.

Lasă un comentariu

O perspectivă asupra a 26 de tehnici de analiză a datelor mari: partea 1

O perspectivă asupra a 26 de tehnici de analiză a datelor mari: partea 1

O perspectivă asupra a 26 de tehnici de analiză a datelor mari: partea 1

Funcționalitățile straturilor arhitecturii de referință pentru Big Data

Funcționalitățile straturilor arhitecturii de referință pentru Big Data

Citiți blogul pentru a cunoaște diferitele straturi din Arhitectura Big Data și funcționalitățile acestora în cel mai simplu mod.

6 lucruri extrem de nebunești despre Nintendo Switch

6 lucruri extrem de nebunești despre Nintendo Switch

Mulți dintre voi cunoașteți Switch care va fi lansat în martie 2017 și noile sale funcții. Pentru cei care nu știu, am pregătit o listă de funcții care fac din „Switch” un „gadget obligatoriu”.

Promisiuni tehnologice care sunt încă nelivrate

Promisiuni tehnologice care sunt încă nelivrate

Aștepți ca giganții tehnologiei să-și îndeplinească promisiunile? vezi ce a ramas nelivrat.

Cum poate AI să ducă automatizarea proceselor la următorul nivel?

Cum poate AI să ducă automatizarea proceselor la următorul nivel?

Citiți asta pentru a afla cum devine populară inteligența artificială în rândul companiilor la scară mică și cum crește probabilitățile de a le face să crească și de a le oferi concurenților avantaje.

Singularitatea tehnologică: un viitor îndepărtat al civilizației umane?

Singularitatea tehnologică: un viitor îndepărtat al civilizației umane?

Pe măsură ce Știința Evoluează într-un ritm rapid, preluând multe dintre eforturile noastre, crește și riscurile de a ne supune unei Singularități inexplicabile. Citiți, ce ar putea însemna singularitatea pentru noi.

CAPTCHA: Cât timp poate rămâne o tehnică viabilă pentru distincția uman-AI?

CAPTCHA: Cât timp poate rămâne o tehnică viabilă pentru distincția uman-AI?

CAPTCHA a devenit destul de dificil de rezolvat pentru utilizatori în ultimii ani. Va fi capabil să rămână eficient în detectarea spam-ului și a botului în viitor?

Telemedicină și îngrijire medicală la distanță: viitorul este aici

Telemedicină și îngrijire medicală la distanță: viitorul este aici

Ce este telemedicina, îngrijirea medicală la distanță și impactul acesteia asupra generației viitoare? Este un loc bun sau nu în situația de pandemie? Citiți blogul pentru a găsi o vedere!

Te-ai întrebat vreodată cum câștigă hackerii bani?

Te-ai întrebat vreodată cum câștigă hackerii bani?

Poate ați auzit că hackerii câștigă mulți bani, dar v-ați întrebat vreodată cum câștigă acești bani? sa discutam.

Actualizarea suplimentului macOS Catalina 10.15.4 cauzează mai multe probleme decât rezolvă

Actualizarea suplimentului macOS Catalina 10.15.4 cauzează mai multe probleme decât rezolvă

Recent, Apple a lansat macOS Catalina 10.15.4 o actualizare suplimentară pentru a remedia problemele, dar se pare că actualizarea provoacă mai multe probleme care duc la blocarea mașinilor Mac. Citiți acest articol pentru a afla mai multe