Requisits
Configura el fitxer d'intercanvi
Instal·leu Docker
Instal·leu Discourse
Configura el discurs
Bootstrap i iniciar el discurs
Obriu Discourse al vostre navegador
Resolució de problemes
Discourse és una nova solució de fòrum de codi obert que és senzilla, neta i directa. S'implementa amb Ruby on Rails, una base de dades Postgres i una memòria cau del servidor Redis. Aquest tutorial descriu com instal·lar Discourse en un Vultr VPS amb CentOS 7.
Requisits
- Vultr VPS amb 1 GB de RAM com a mínim.
- CentOS 7 x64 instal·lat al VPS.
Configura el fitxer d'intercanvi
Heu de configurar l'intercanvi per a un VPS d'1 GB de RAM. Si el vostre VPS té més d'1 GB de RAM, podeu ometre aquest pas. Crearem un fitxer d'intercanvi de 2 GB per a 1 GB de RAM VPS.
Creeu el fitxer d'intercanvi.
dd if=/dev/zero of=/swapfile bs=1M count=2048
mkswap /swapfile
chmod 600 /swapfile
Editeu fstab per afegir el fitxer d'intercanvi a la taula de sistemes de fitxers.
Obriu fstab amb vi:
vi /etc/fstab
Afegiu la línia següent al fitxer:
/swapfile swap swap defaults 0 0
Estableix la política d'ús d'intercanvi. Utilitzeu el fitxer d'intercanvi només quan la memòria del sistema sigui baixa.
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
Habiliteu el fitxer d'intercanvi.
mount -a
swapon -a
Comproveu l'estat del fitxer d'intercanvi.
swapon -s
Si el fitxer d'intercanvi s'ha habilitat, veureu la informació següent.
Filename Type Size Used Priority
/swapfile file 2097148 0 -1
Instal·leu Docker
Executeu l'ordre següent per instal·lar Docker a CentOS 7.
yum install docker
Si heu desactivat SELinux, és millor que el desactiveu també a Docker.
vi /etc/sysconfig/docker
Comenta la línia 4.
#OPTIONS='--selinux-enabled'
Inicieu el servei Docker.
systemctl start docker
systemctl enable docker
Tingueu en compte que si reinicieu el firewalld, també necessitareu reiniciar Docker. Com que firewalld eliminarà la cadena docker d'iptables quan es reiniciï.
Instal·leu Discourse
Creeu una carpeta anomenada discoursesota /vari cloneu el repositori del discurs.
mkdir /var/discourse
git clone https://github.com/discourse/discourse_docker.git /var/discourse
Aneu a la discoursecarpeta.
cd /var/discourse
Copieu el fitxer de plantilla de configuració del discurs a la carpeta de contenidors.
cp samples/standalone.yml containers/app.yml
Obriu app.ymlamb vi.
vi containers/app.yml
Si utilitzeu un VPS d'1 GB, configureu el buffer compartit db com a 128 MB a app.yml.
db_shared_buffers: "128MB"
Canvieu UNICORN_WORKERSa 2 per a una instància de RAM d'1 GB.
## With 2GB we recommend 3-4 workers, with 1GB only 2
UNICORN_WORKERS: 2
Establiu la vostra adreça de correu electrònic per al compte d'administrador. Necessitareu aquest correu electrònic per registrar el compte d'administrador al vostre fòrum de Discurs.
DISCOURSE_DEVELOPER_EMAILS: 'you@youremail.com'
Estableix el nom de domini per a Discourse. Per exemple, l'hem establert com a discourse.example.com, això vol dir que seria accessible a l'URL http://discourse.example.com/.
## TODO: The domain name this Discourse instance will respond to
DISCOURSE_HOSTNAME: 'discourse.example.com'
Configura el teu servidor de correu per a Discourse.
Si el vostre servidor de correu es troba al mateix servidor que el Discourse, configureu-lo de la següent manera.
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
Si utilitzeu un servidor SMTP remot, editeu-lo app.ymlde la següent manera.
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)
Guarda i surt app.yml.
Bootstrap i iniciar el discurs
Executeu l'ordre següent per arrencar el discurs.
./launcher bootstrap app
Un cop finalitzat el procés d'arrencada, inicieu Discourse.
./launcher start app
Obriu Discourse al vostre navegador
A l'ordinador client, introduïu el nom de domini que heu configurat per a Discourse a app.yml. Veureu la vostra pròpia instància de Discurs.
Resolució de problemes
- Per defecte, Docker escoltarà al port 80. Si Nginx o Apache ja han utilitzat el port 80, haureu de moure aquest servei a un altre port; o canvieu Docker a un altre port. Per exemple, canvieu "80:80" a "8080:80"
app.ymlper fer que Docker escolti al port 8080.
- Al VPS d'1 GB de RAM, és possible que no s'actualitzi el Discourse a la nova versió i veureu una "502 Bad Gateway" quan accediu al Discourse. La solució senzilla per a aquest problema és executar
./launcher rebuild appper reconstruir la vostra instància de Discourse.