Instalacji

Transkrypt

Instalacji
Projekt Giełdy Terminów
Podręcznik instalacji
Michał Begejowicz
Bartosz Żurkowski
19 czerwca 2015
Giełda Terminów
IO 2015
Spis treści
1 Wstęp
2
2 Przygotowanie środowiska
2.1 Instalacja Ruby . . . . . . . . .
2.1.1 Instalacja rbenv . . . . .
2.1.2 Instalacja Ruby . . . . .
2.1.3 Instalacja gemu Bundler
2.2 Instalacja redis . . . . . . . . . .
2.3 Instalacja PostgreSQL . . . . . .
2.4 Instalacja nodejs . . . . . . . . .
.
.
.
.
.
.
.
3
3
3
3
4
4
4
5
3 Instalacja aplikacji
3.1 Sklonowanie repozytorium . . . . . . . . . . . . . . . . .
3.2 Instalacja bibliotek . . . . . . . . . . . . . . . . . . . . .
3.3 Konfiguracja bazy danych . . . . . . . . . . . . . . . . . .
5
5
5
5
4 Uruchomienie aplikacji
4.1 Dostęp do panelu administratorskiego . . . . . . . . . . .
5
6
1
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Wstęp
Poniższy opis instalacji opisuje ogólne czynności które należy wykonać, by uruchomić aplikację w środowisku deweloperskim. Podane również są dokładne komendy, które pozwolą wykonać opisane czynności w
systemach z rodziny Ubuntu (w wersji 14.10 i nowszych).
Przed rozpoczęciem, należy zaktualizować listę pakietów.
$ sudo apt−g e t update
$ sudo apt−g e t upgrade
Strona 2
Giełda Terminów
2
IO 2015
Przygotowanie środowiska
2.1
Instalacja Ruby
Instalacja Rubiego składa się z dwóch elementów: instalacji menedżera wersji Ruby oraz samego interpretera języka.
2.1.1
Instalacja rbenv
rbenv jest menedżerem wersji Ruby. Aktualne informacje o sposobach instalacji najnowszej wersji na róznych systemach można znaleźć
pod adresem: https://github.com/sstephenson/rbenv.
W systemie Ubuntu należy wykonać poniższe komendy:
$ sudo apt−g e t i n s t a l l g i t
$ g i t c l o n e h t t p s : / / g i t h u b . com/ s s t e p h e n s o n / rbenv . g i t ~ /.
,→ rbenv
$ echo ’ export PATH="$HOME/ . rbenv / bi n :$PATH" ’ >> ~ /. b a s h r c
$ echo ’ eval "$ ( rbenv ␣ i n i t ␣−)" ’ >> ~/ . b a s h r c
$ source ~ /. b a s h r c
$ g i t c l o n e h t t p s : / / g i t h u b . com/ s s t e p h e n s o n / ruby−b u i l d . g i t
,→ ~ /. rbenv / p l u g i n s / ruby−b u i l d
2.1.2
Instalacja Ruby
Pomyślna kompilacja Ruby zależy od obecności pewnych elementów
w systemie. Instalacja zalecanego zestawu pakietów została opisana poniżej. Jeżeli wciąż pojawią się błędy, należy skorzystać z pomocy rubybuild: https://github.com/sstephenson/ruby-build/wiki.
$ sudo apt−g e t i n s t a l l a u t o c o n f b i s o n b u i l d −e s s e n t i a l
,→ l i b s s l −dev l i b y a m l −dev l i b r e a d l i n e 6 −dev z l i b 1 g −dev
,→ l i b n c u r s e s 5 −dev l i b f f i −dev libgdbm3 libgdbm−dev
$ rbenv i n s t a l l 2 . 2 . 1
Strona 3
Giełda Terminów
2.1.3
IO 2015
Instalacja gemu Bundler
Jedynym gemem, który musi zostać zainstalowany ręcznie, jest Bundler. On zajmie się natomiast instalacją wszystkich innych gemów potrzebnych do działania aplikacji.
$ gem i n s t a l l b u n d l e r −−no−r i
2.2
Instalacja redis
Redis jest prostym, lecz szybkim magazynem danych. Aplikacja korzysta z niego, by przechowywać informacje o zadaniach wykonywanych
asynchronicznie.
wget http : / / download . r e d i s . i o / r e d i s −s t a b l e . t a r . gz
t a r x v z f r e d i s −s t a b l e . t a r . gz
cd r e d i s −s t a b l e
make
sudo make i n s t a l l
cd u t i l s
sudo . / i n s t a l l _ s e r v e r . sh
sudo s e r v i c e r e d i s _ 6 3 7 9 s t a r t
$
$
$
$
$
$
$
$
2.3
Instalacja PostgreSQL
PostgreSQL to popularny system zarządzania bazą danych.
$ sudo apt−g e t i n s t a l l p o s t g r e s q l p o s t g r e s q l −c o n t r i b
Aby aplikacja mogła tworzyć i usuwać swoje bazy danych, należy pozwolić jej na połączenie z PostgreSQL. Można tego dokonać, modyfikując
plik /etc/postgresql/9.4/main/pg_hba.conf w ten sposób, by zawarta
była tam poniższa linia:
local
all
all
trust
Następnie należy zrestartować serwer:
$ sudo / e t c / i n i t . d/ p o s t g r e s q l r e l o a d
Strona 4
Giełda Terminów
2.4
IO 2015
Instalacja nodejs
Do działania każdej aplikacji Ruby on Rails niezbędny jest interpreter
języka JavaScript, na przykład NodeJS.
$ sudo apt−g e t i n s t a l l n o d e j s
3
Instalacja aplikacji
Uruchomienie aplikacji wymaga ściągnięcia jej kodu, potrzebnych bibliotek oraz skonfigurowania bazy danych.
3.1
Sklonowanie repozytorium
$ cd ~ ; mkdir p r o j e c t s ; cd p r o j e c t s
$ g i t c l o n e g i t @ g i t h u b . com : bzurkowski / Exchange . g i t
$ cd Exchange
3.2
Instalacja bibliotek
$ bundle
3.3
Konfiguracja bazy danych
$ cp c o n f i g / d a t a b a s e . yml . sample c o n f i g / d a t a b a s e . yml
$ bundle exec r a k e db : c r e a t e db : schema : l o a d
4
Uruchomienie aplikacji
Uruchomienie aplikacji polega na wpisaniu komendy uruchamiającej
serwer http:
$ bundle exec r a i l s s e r v e r
Aplikacja będzie dostępna pod adresem http://localhost:3000/
Strona 5
Giełda Terminów
4.1
IO 2015
Dostęp do panelu administratorskiego
Użytkownicy systemu nie mogą zarejestrować się jako Administrator,
lecz inny Administrator może nadać takie prawa zwykłym uzytkownikom. Aby utworzyć pierwsze konto administratorskie, należy zarejestrować konto w aplikacji, a następnie nadać rolę administratora z pomocą
konsoli rails:
$ bundle exec r a i l s c o n s o l e
> User . l a s t . r o l e s << Role . c r e a t e ( name : "Admin" )
> quit
Strona 6