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