Jeśli chciałbyś mieć takie forum jak forum.lvlup.pro to użyj tego prostego poradnika :)
VPS
Wymagania
VPS
Potrzebujemy VPSa który będzie używać pełnej wirtualizacji czyli np. KVM, Xen lub Hyper-V
W tym poradniku będzie użyty VPS z oferty KVM Game Pro https://lvlup.pro/oferta/vps-kvm-game-pro/ nawet bez użycia Cloudflare powinien wytrzymać małe ataki DDoS którymi czasami padają fora. Wystarczy nam pakiet z 2GB RAM.
Powiadomienia
Oprócz VPSa potrzebujemy pewnego konta pocztowego wysyłającego emaile. Wiadomości email są kluczowe dla działania forum np. aby uzyskać dostęp administratora oraz aby nowi użytkownicy mogli aktywować konto. Oczywiście nie chcemy aby nasze emaile trafiały do spamu jak to ma miejsce w sporej ilości przypadków stron dlatego skorzystamy z jednego z pewnych dostawców wysyłki email którzy się w tym specjalizują.
Przykładowi dostawcy:
- http://mailgun.com - 10 000 darmowych wiadomości w miesiącu
- http://sparkpost.com/ - 100 000 darmowych wiadomości w miesiącu
W tym poradniku użyjemy Mailgun ze względu na banalną konfigurację, przeciętne forum nie zużyje całego limitu 10k :)
Domena lub subdomena
Ostatnia z potrzebnych rzeczy to nazwa pod którą będzie nasze forum. Więcej można przeczytać w tym wątku https://lvlup.rok.ovh/t/domena/39
Zanim zaczniemy konfigurować forum na VPS utwórzmy oraz aktywujmy konto na mailgun.com
Po dodaniu domeny oraz wymaganych wpisów w strefie DNS według instrukcji w panelu mailgun.com wchodzimy w panelu w swoją domenę/subdomenę a następnie klikamy Manage SMTP credentials
umożliwi nam to stworzenie osobnego loginu i hasła dostępu do skrzynki używanej na forum.
Gdy jesteśmy już w tej zakładce klikamy New SMTP Credential
Uzupełniamy następnie:
Login
- np. forum
Password
- najlepiej długie i losowe hasło nie używane nigdzie indziej
Confirm Password
- powtarzamy to co wyżej
Zapisujemy sobie dane który tu wpisaliśmy i klikamy Create Credential
.
Gotowe, mamy już dane potrzebne do konfiguracji forum :)
VPS
Po zamówieniu i opłaceniu usługi otrzymujemy dane na maila:
Mając teraz IP VPSa dodajemy do strefy DNS wpis A z IP VPS, instrukcje znajdziesz w wątku o domenie https://lvlup.rok.ovh/t/domena/39
Włączamy VPS i logujemy się według instrukcji: https://lvlup.rok.ovh/t/laczenie-sie-przez-ssh-do-vps/22
Następnie dla uproszczenia logujemy się od razu na konto root
sudo su
Należy wprowadzić swoje hasło użytkownika user
Instalacja potrzebnych narzędzi
Aby ściągnąć pliki Discourse należy mieć zainstalowany system zarządzania wersjami git
Do edycji pliku konfiguracyjnego użyjemy łatwego w obsłudze edytora nano.
apt-get install git nano
Prawdopodobnie takie narzędzia będą już wcześniej zainstalowane ale nie zaszkodzi się upewnić :)
Instalacja Docker'a
Docker to nowoczesne narzędzie które zarządza kontenerami czyli w dużym uproszczeniu małymi VPSami które zawierają wszystko co potrzeba, dzięki czemu uruchomienie i aktualizacja nawet skomplikowanych aplikacji jest bardzo prosta.
Wystarczy jedna komenda
wget -qO- https://get.docker.com/ | sh
Po około minucie Docker jest zainstalowany i możemy przystąpić do instalacji Discourse
Instalacja Discourse
Pliki forum
Tworzymy katalog w którym będą pliki forum, następnie ściągamy do niego potrzebne pliki. Ostatnia komenda kopiuje przykładową domyślną konfigurację tak abyśmy mogli szybko zacząć pracę nad forum nie wczytując się w każdą zmienną konfiguracji
mkdir /var/discourse
git clone https://github.com/discourse/discourse_docker.git /var/discourse
cd /var/discourse
cp samples/standalone.yml containers/app.yml
Konfiguracja
Odpalamy edytor i zmieniamy kilka rzeczy w konfiguracji przed instalacją forum
nano /var/discourse/containers/app.yml
Ukaże nam się mniej więcej takie okno edytora.
Szybkie wprowadzenie jak z niego korzystać:
Ctrl
+ W
Szukanie
Ctrl
+ X
Zapis
Ctrl
+ X
Wyjście
y
a potem Enter
Potwierdzenie jednej z powyższych operacji
Sekcje konfiguracji do zmiany
DISCOURSE_DEVELOPER_EMAILS: 'me@example.com'
Zamiast me@example.com
wpisujemy swój adres email na który chcemy otrzymywać wiadomości z forum, również te dotyczące naszej funkcji admina czyli np. informacje o aktualizacjach. Pierwsze konto admina będzie miało taki adres email i musisz mieć dostęp do tej skrzynki aby to potwierdzić.
DISCOURSE_HOSTNAME: 'discourse.example.com'
Tu discourse.example.com
zamieniamy na naszą domenę lub subdomenę pod którym chcemy aby pojawiło się forum czyli np. mojefajneforum.pl lub mojeforum.hostmc.pl
Potrzebujemy jeszcze ustawić trzy linie konfiguracji, upewnijmy się że każda z nich usunięty znak #
, są to
DISCOURSE_SMTP_ADDRESS
tu wpisujemysmtp.mailgun.org
DISCOURSE_SMTP_USER_NAME
wpisujemy ustalony wcześniej w mailgun loginDISCOURSE_SMTP_PASSWORD
miejsce dla ustalonego wcześniej hasła w mailgun
Okej, mamy co trzeba, teraz zapiszemy i wyjdziemy z edytora. Wciskamy Ctrl + O a następnie Enter Teraz Ctrl + X i właśnie wróciliśmy do wiersza poleceń.
Instalacja
Teraz możemy uruchomić właściwą instalację forum
./launcher bootstrap app
Proces ten trwa około 4-10min Gdy wszystko się już zainstaluje można przystąpić do uruchomienia forum.
Uruchomienie
./launcher start app
Forum powinno być już dostępne pod naszym wybranym adresem. Wszystko jest skonfigurowane tak że przy restarcie VPSa forum włączy się automatycznie.
Dodatkowe informacje
Ten poradnik jest spolszczoną, uproszczoną i skróconą formą oficjalnego poradnika instalacji dostępnego tu:
https://github.com/discourse/discourse/blob/master/docs/INSTALL-cloud.md