Követelmények
Swap fájl beállítása
Telepítse a Dockert
Telepítse a Discourst
A Discourse konfigurálása
Bootstrap és indítsa el a Discourse alkalmazást
Nyissa meg a Discourst a böngészőjében
Hibaelhárítás
A Discourse egy új nyílt forráskódú fórummegoldás, amely egyszerű, tiszta és egyértelmű. A Ruby on Rails, egy Postgres adatbázis és egy Redis szerver gyorsítótár segítségével valósult meg. Ez az oktatóanyag a Discourse telepítését ismerteti Vultr VPS-re CentOS 7 rendszerrel.
Követelmények
- Vultr VPS minimum 1 GB RAM-mal.
- CentOS 7 x64 telepítve a VPS-re.
Swap fájl beállítása
Be kell állítania a cserét egy 1 GB RAM VPS-re. Ha a VPS több mint 1 GB RAM-mal rendelkezik, kihagyhatja ezt a lépést. Létrehozunk egy 2 GB-os swap fájlt 1 GB RAM-os VPS-hez.
Hozd létre a cserefájlt.
dd if=/dev/zero of=/swapfile bs=1M count=2048
mkswap /swapfile
chmod 600 /swapfile
Szerkessze az fstab-t a swapfájl hozzáadásához a fájlrendszer-táblázathoz.
Nyissa meg az fstab-t a vi segítségével:
vi /etc/fstab
Adja hozzá a következő sort a fájlhoz:
/swapfile swap swap defaults 0 0
Állítsa be a cserehasználati szabályzatot. Csak akkor használja a swap fájlt, ha kevés a rendszermemória.
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
Engedélyezze a cserefájlt.
mount -a
swapon -a
Ellenőrizze a cserefájl állapotát.
swapon -s
Ha a cserefájl engedélyezve van, a következő információkat fogja látni.
Filename Type Size Used Priority
/swapfile file 2097148 0 -1
Telepítse a Dockert
Futtassa az alábbi parancsot a Docker telepítéséhez a CentOS 7 rendszeren.
yum install docker
Ha letiltotta a SELinuxot, jobb, ha letiltja a dockerben is.
vi /etc/sysconfig/docker
Megjegyzés a 4. sorhoz.
#OPTIONS='--selinux-enabled'
Indítsa el a dokkoló szolgáltatást.
systemctl start docker
systemctl enable docker
Kérjük, vegye figyelembe, hogy ha újraindítja a tűzfalat, újra kell indítania a dokkolót is. Mert a tűzfal újraindításkor eltávolítja a dokkolóláncot az iptables-ból.
Telepítse a Discourst
Hozzon létre egy mappát discourse, /varés klónozza a Discourse tárat.
mkdir /var/discourse
git clone https://github.com/discourse/discourse_docker.git /var/discourse
Menjen a discoursemappába.
cd /var/discourse
Másolja a Discourse konfigurációs sablonfájlját a tárolók mappájába.
cp samples/standalone.yml containers/app.yml
Nyissa meg a app.ymlvi segítségével.
vi containers/app.yml
Ha 1 GB-os VPS-t használ, állítsa be a db megosztott puffert 128 MB-ra app.yml.
db_shared_buffers: "128MB"
Váltson UNICORN_WORKERS2-re egy 1 GB RAM-os példány esetén.
## With 2GB we recommend 3-4 workers, with 1GB only 2
UNICORN_WORKERS: 2
Állítsa be az e-mail címét az adminisztrátori fiókhoz. Erre az e-mail-címre lesz szüksége ahhoz, hogy regisztrálja az adminisztrátori fiókot a Discourse fórumon.
DISCOURSE_DEVELOPER_EMAILS: 'you@youremail.com'
Állítsa be a Discourse domain nevét. Például így állítjuk be discourse.example.com, ami azt jelenti, hogy az URL címen lesz elérhető http://discourse.example.com/.
## TODO: The domain name this Discourse instance will respond to
DISCOURSE_HOSTNAME: 'discourse.example.com'
Állítsa be levelezőszerverét a Discourse számára.
Ha a levelezőszerver ugyanazon a kiszolgálón van, mint a Discourse, állítsa be az alábbiak szerint.
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
Ha távoli SMTP-kiszolgálót használ, kérjük, módosítsa a app.ymlkövetkezőket.
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)
Mentés és kilépés app.yml.
Bootstrap és indítsa el a Discourse alkalmazást
Futtassa az alábbi parancsot a Discourse indításához.
./launcher bootstrap app
A rendszerindítási folyamat befejezése után indítsa el a Discourse alkalmazást.
./launcher start app
Nyissa meg a Discourst a böngészőjében
Az ügyfélszámítógépen adja meg azt a tartománynevet, amelyet a Discourse-hoz konfigurált a app.yml. Látni fogja a Discourse saját példányát.
Hibaelhárítás
- Alapértelmezés szerint a Docker a 80-as porton figyel. Ha a 80-as portot az Nginx vagy az Apache már használta, át kell helyeznie a szolgáltatást egy másik portra; vagy cserélje ki a Dockert egy másik portra. Például módosítsa a „80:80” értéket „8080:80”-ra,
app.ymlhogy a Docker a 8080-as porton figyeljen.
- Az 1 GB RAM-os VPS-en előfordulhat, hogy nem tudja frissíteni a Discourse-t az új verzióra, és a Discourse elérésekor egy "502 Bad Gateway" jelenik meg. A probléma egyszerű megoldása
./launcher rebuild appa Discourse példány újraépítése.