Discourse: Różnice pomiędzy wersjami

Linia 1: Linia 1:
 
Discourse to nowoczesna, darmowa, oparta o Ruby on Rails aplikacja platformy dyskusyjnej.
 
Discourse to nowoczesna, darmowa, oparta o Ruby on Rails aplikacja platformy dyskusyjnej.
 
Obecny opis instalacji Discourse jest nieaktualny!
 
  
 
=== Wstępne czynności ===
 
=== Wstępne czynności ===
Linia 16: Linia 14:
 
  bundle config build.nokogiri --with-ldflags=-L/usr/local/lib
 
  bundle config build.nokogiri --with-ldflags=-L/usr/local/lib
 
  bundle config build.mini_racer --with-ldflags=-L/usr/local/lib
 
  bundle config build.mini_racer --with-ldflags=-L/usr/local/lib
 
Zainstalować gem libv8
 
wget  <nowiki>https://petko.me/libv8-5.3.332.38.5-x86_64-freebsd-10.gem</nowiki>
 
gem install libv8-5.3.332.38.5-x86_64-freebsd-10.gem
 
  
 
Utworzyć [[Strona WWW|Stronę]]
 
Utworzyć [[Strona WWW|Stronę]]
  devil www add DOMENA ruby ~/.rvm/wrappers/ruby-2.3.3/ruby
+
  devil www add DOMENA ruby ~/.rvm/wrappers/ruby-2.3.7/ruby
 +
W przypadku nowszej wersji Ruby należy wskazać prawidłowy katalog z oznaczeniem wersji.
  
 
Przejść do katalogu
 
Przejść do katalogu
Linia 33: Linia 28:
 
  git clone <nowiki>https://github.com/discourse/discourse public_ruby</nowiki>
 
  git clone <nowiki>https://github.com/discourse/discourse public_ruby</nowiki>
 
  cd public_ruby
 
  cd public_ruby
  git checkout v1.8.0.beta9
+
  git checkout v2.1.2
  
  

Wersja z 10:09, 23 paź 2018

Discourse to nowoczesna, darmowa, oparta o Ruby on Rails aplikacja platformy dyskusyjnej.

Wstępne czynności

Przed przystąpieniem do instalacji należy:

Przygotowanie środowiska

Należy przygotować środowisko ruby rvm

rvm install 2.3 --autolibs=disabled && rvm use 2.3 && gem install bundler

Skonfigurować gemy

bundle config build.hiredis --with-ldflags=-L/usr/local/lib
bundle config build.nokogiri --with-ldflags=-L/usr/local/lib
bundle config build.mini_racer --with-ldflags=-L/usr/local/lib

Utworzyć Stronę

devil www add DOMENA ruby ~/.rvm/wrappers/ruby-2.3.7/ruby

W przypadku nowszej wersji Ruby należy wskazać prawidłowy katalog z oznaczeniem wersji.

Przejść do katalogu

cd domains/DOMENA/

usunąć katalog public

rm -r public_ruby

pobrać repozytorium Discourse

git clone https://github.com/discourse/discourse public_ruby
cd public_ruby
git checkout v2.1.2


utworzyć bazę danych

devil pgsql db add BAZA
devil pgsql extensions ID_BAZA pg_trgm
devil pgsql extensions ID_BAZA hstore

Konfiguracja wstępna

skonfigurować Discourse

cd public_ruby
cp config/discourse_defaults.conf config/discourse.conf
vim config/discourse.conf

Ustawić wartości:

db_host = pgsqlX.mydevil.net            

gdzie X to numer serwera na którym założone jest konto

db_name = ID_BAZA
db_username = ID_BAZA
hostname = DOMENA

Zapisać i wyjść z edytora.

Wykonać

env GYP_DEFINES="make_clang_dir=" CXX=/usr/bin/clang++ CC=/usr/bin/clang bundle install --without development test

Konfiguracja redis

W panelu mydevil zarezerwować numer portu TCP dla redisa, w dalszym opisie odwołania do niego występują jako ZAREZERWOWANY_NUMER_PORTU

W katalogu domowym wykonać:

wget  https://raw.githubusercontent.com/antirez/redis/3.2/redis.conf

Otworzyć w edytorze plik redis.conf

vim redis.conf

Zamienić

port 6379

na

port ZAREZERWOWANY_NUMER_PORTU

zamienić

# requirepass foobared

na

requirepass HASLO_REDIS

uruchomić redis w sesji screen

screen redis-server redis.conf

Powinien ukazac się komunikat o uruchomieniu redisa. Jeśli tak się stało, to opuszczamy sesję screena wciskając kombinację klawiszy [Ctr]-[a], następnie zaś wciskamy klawisz [d]

Celem automatycznego startu Redis po restarcie serwera, należy w tabeli Cron (uruchomienie edycji z poziomu wiersza poleceń crontab -e) dodać linijkę linijkę:

@reboot redis-server /home/login/redis.conf

gdzie login to nazwa konta hostingowego.

Dodanie danych do połączenia z redis

Powrócić do edycji pliku config/discourse.conf

Zamienić

redis_port = 6379

na

redis_port = ZAREZERWOWANY_NUMER_PORTU

oraz

redis_slave_port = 6379

na

redis_slave_port = ZAREZERWOWANY_NUMER_PORTU

Ustawić

redis_password = HASLO_REDIS

Uruchomienie i konfiguracja konta administratora

RAILS_ENV=production bundle exec rake db:migrate
RAILS_ENV=production bundle exec rake assets:precompile
RAILS_ENV=production bundle exec rake admin:create