Jak zainstalować platformę Phoenix na CentOS 7

Phoenix to nowa platforma programistyczna oparta na eliksirach. Został zaprojektowany w celu zapewnienia wysokiej wydajności programistycznej, bogatych funkcji i wysokiej wydajności środowiska wykonawczego.

Ten samouczek pokaże, jak zainstalować Phoenix na instancji serwera Vultr CentOS 7 w celach programistycznych.

Wymagania wstępne

Przed kontynuowaniem zakładam, że masz:

  • Wdrożono nową instancję serwera Vultr CentOS 7.
  • Zalogowany do tego systemu CentOS 7 jako użytkownik sudo inny niż root.

Krok 1: Zaktualizuj system

sudo yum install epel-release
sudo yum update
sudo reboot

Krok 2: Zainstaluj Erlang

Przede wszystkim musisz zainstalować Erlang w swoim systemie. Phoenix to framework napisany w języku programowania Elixir, a każda aplikacja oparta na Elixir musi zostać skompilowana do kodu bajtowego Erlang, zanim będzie można go uruchomić.

cd ~
wget http://packages.erlang-solutions.com/erlang-solutions-1.0-1.noarch.rpm
sudo rpm -Uvh erlang-solutions-1.0-1.noarch.rpm
sudo yum install erlang

Możesz potwierdzić instalację Erlang za pomocą:

erl

To polecenie przeniesie Cię do powłoki Erlang. Podczas uruchamiania powłoki Erlang zobaczysz następujące dane wyjściowe.

Erlang/OTP 18 [erts-7.3] [source-d2a6d81] [64-bit] [async-threads:10] [hipe] [kernel-poll:false]

Eshell V7.3  (abort with ^G)
1>

Naciśnij Ctrl+Cdwukrotnie, aby wyjść z powłoki Erlang.

Krok 3: Zainstaluj Elixir

Ponieważ wersja Elixir w repozytorium YUM systemu CentOS 7 jest raczej przestarzała, powinieneś użyć oficjalnego, wstępnie skompilowanego archiwum Elixir, aby zainstalować najnowszą wersję Elixir.

Pobierz i rozpakuj najnowsze wstępnie skompilowane archiwum Elixir:

cd /usr/bin
sudo mkdir elixir
cd /usr/bin/elixir
sudo wget https://github.com/elixir-lang/elixir/releases/download/v1.2.5/Precompiled.zip
sudo yum install unzip
sudo unzip Precompiled.zip

Eliksir jest teraz zainstalowany w twoim systemie. Możesz uruchamiać polecenia Elixir, określając ścieżkę do każdego polecenia związanego z Elixirem, na przykład:

/usr/bin/elixir/bin/elixir -v

To polecenie powie ci wersję Elixir w twoim systemie.

Dla wygody możesz dodać ścieżkę bin Elixir (wraz ze ścieżką bin do zainstalowania node.js) do PATHzmiennej środowiskowej:

sudo vi /etc/profile

Dodaj następujący wiersz na końcu pliku:

export PATH="$PATH:/usr/bin/elixir/bin:/usr/bin/node-v6.1.0-linux-x64/bin"

Zapisz i wyjdź:

:wq

Załaduj ponownie profil:

source /etc/profile

Odtąd możesz uruchomić polecenie związane z eliksirem bez określania pełnej ścieżki, na przykład:

elixir -v

Teraz zainstaluj menedżera pakietów Hex, uruchamiając mixpolecenie w ten sam sposób:

cd ~
mix local.hex

Odpowiedz Ypodczas procesu instalacji.

Krok 4: Zainstaluj Phoenix

Użyj następującego polecenia, aby zainstalować Phoenix:

mix archive.install https://github.com/phoenixframework/archives/raw/master/phoenix_new.ez

Odpowiedz Ypodczas procesu instalacji.

Krok 5: Zainstaluj Node.js (opcjonalnie)

Jeśli chcesz użyć brunch.io, domyślnego narzędzia do budowania Phoenix, do kompilacji zasobów statycznych (javascript, css itp.), Musisz zainstalować Node.js (> = 5.0.0):

cd ~
wget https://nodejs.org/dist/v6.1.0/node-v6.1.0-linux-x64.tar.xz
sudo yum install xz
xz -d node-v6.1.0-linux-x64.tar.xz
tar -xvf node-v6.1.0-linux-x64.tar
sudo mv ~/node-v6.1.0-linux-x64 /usr/bin/

Pamiętaj, że ścieżka Node.js została dodana do zmiennej środowiskowej PATH w kroku 3. Możesz przetestować instalację Node.js za pomocą tego polecenia:

node -v

Krok 6: Zainstaluj PostgreSQL

Domyślnie Phoenix używa PostgreSQL do konfigurowania aplikacji. Na CentOS 7 możesz zainstalować PostgreSQL używając YUM:

sudo yum install -y postgresql-server
sudo postgresql-setup initdb

Uruchom postgresqlusługę:

sudo systemctl start postgresql.service
sudo systemctl enable postgresql.service

Ustaw hasło dla domyślnego użytkownika PostgreSQL „postgres”:

sudo -u postgres psql

W powłoce PostgreSQL (po zmianie monitu postgres=#) ustaw hasło dla „postgres”:

\password postgres

Wpisz postgresdwukrotnie hasło , które jest preferowane przez Phoenix.

Na koniec użyj następującego polecenia, aby wyjść z powłoki PostgreSQL.

\q

Skonfiguruj metodę uwierzytelniania użytkownika bazy danych:

sudo vi /var/lib/pgsql/data/pg_hba.conf

Znajdź następującą sekcję:

# IPv4 local connections:
host    all             all             127.0.0.1/32            ident
# IPv6 local connections:
host    all             all             ::1/128                ident

Zmodyfikuj metodę uwierzytelniania połączeń lokalnych IPv4 na md5:

# IPv4 local connections:
host    all             all             127.0.0.1/32            md5
# IPv6 local connections:
host    all             all             ::1/128                 md5

Zapisz i wyjdź:

:wq

Uruchom ponownie postgresqlusługę:

sudo systemctl restart postgresql.service

Krok 7: zainstaluj narzędzia inotify

Użyj następującego polecenia, aby zainstalować wymagany komponent „inotify-tools”:

sudo yum install inotify-tools

Krok 8: Utwórz aplikację Phoenix

Załóżmy, że chcesz utworzyć aplikację Phoenix w katalogu ~/phoenix_project_1:

mix phoenix.new ~/phoenix_project_1

Odpowiedz Ypodczas procesu, aby pobrać i zainstalować zależności.

To polecenie utworzy ~/phoenix_project_1dla ciebie katalog aplikacji . Wejdź do katalogu i utwórz bazę danych:

cd ~/phoenix_project_1
mix ecto.create

Odpowiedz, Yaby zainstalować „zbrojenie” podczas pierwszego tworzenia bazy danych.

Uruchom aplikację za pomocą następującego polecenia:

mix phoenix.server

Utrzymując bieżące połączenie SSH przy życiu, zainicjuj inne połączenie SSH i zmodyfikuj reguły zapory, aby przyznać dostęp do aplikacji:

sudo firewall-cmd --zone=public --permanent --add-port=4000/tcp
sudo firewall-cmd --reload

Na koniec użyj przeglądarki internetowej, aby odwiedzić aplikację z:

http://[your-server-IP]:4000

To kończy nasz samouczek. Witamy w Phoenix!

Zostaw komentarz

Funkcjonalności warstw architektury referencyjnej Big Data

Funkcjonalności warstw architektury referencyjnej Big Data

Przeczytaj blog, aby w najprostszy sposób poznać różne warstwy w architekturze Big Data i ich funkcjonalności.

Rewolucyjne wynalazki Google, które ułatwią Twoje życie.

Rewolucyjne wynalazki Google, które ułatwią Twoje życie.

Chcesz zobaczyć rewolucyjne wynalazki Google i jak te wynalazki zmieniły życie każdego człowieka dzisiaj? Następnie czytaj na blogu, aby zobaczyć wynalazki Google.

13 komercyjnych narzędzi do ekstrakcji danych z Big Data

13 komercyjnych narzędzi do ekstrakcji danych z Big Data

13 komercyjnych narzędzi do ekstrakcji danych z Big Data

Pozostań w kontakcie dzięki aplikacji WhatsApp na komputer 24*7

Pozostań w kontakcie dzięki aplikacji WhatsApp na komputer 24*7

Whatsapp w końcu uruchomił aplikację Desktop dla użytkowników komputerów Mac i Windows. Teraz możesz łatwo uzyskać dostęp do Whatsapp z systemu Windows lub Mac. Dostępne dla Windows 8+ i Mac OS 10.9+

5 przykładów, które dowodzą, że energetyka jądrowa nie zawsze jest zła

5 przykładów, które dowodzą, że energetyka jądrowa nie zawsze jest zła

Energia jądrowa jest zawsze pogardzana, nigdy jej nie szanujemy z powodu przeszłych wydarzeń, ale nie zawsze jest zła. Przeczytaj post, aby dowiedzieć się więcej na ten temat.

Friday Essential: Co się stało z samochodami sterowanymi przez sztuczną inteligencję?

Friday Essential: Co się stało z samochodami sterowanymi przez sztuczną inteligencję?

Koncepcja autonomicznych samochodów, które wyjadą na drogi za pomocą sztucznej inteligencji, to marzenie, które mamy już od jakiegoś czasu. Ale pomimo kilku obietnic nigdzie ich nie widać. Przeczytaj ten blog, aby dowiedzieć się więcej…

5 przydatnych narzędzi sztucznej inteligencji, które uproszczą Twoje życie

5 przydatnych narzędzi sztucznej inteligencji, które uproszczą Twoje życie

Sztuczna inteligencja nie jest dla ludzi nową nazwą. Ponieważ sztuczna inteligencja jest włączona do każdego strumienia, jednym z nich jest opracowywanie narzędzi zwiększających ludzką wydajność i dokładność. Skorzystaj z tych niesamowitych narzędzi uczenia maszynowego i uprość swoje codzienne zadania.

Czy AI może walczyć z rosnącą liczbą ataków ransomware?

Czy AI może walczyć z rosnącą liczbą ataków ransomware?

Wzrasta liczba ataków ransomware, ale czy sztuczna inteligencja może pomóc w radzeniu sobie z najnowszym wirusem komputerowym? Czy AI jest odpowiedzią? Przeczytaj tutaj, wiedz, że sztuczna inteligencja jest zmorą lub zgubą

Wgląd w 26 technik analizy Big Data: część 2

Wgląd w 26 technik analizy Big Data: część 2

Zawsze potrzebujemy Big Data Analytics do efektywnego zarządzania danymi. W tym artykule omówiliśmy kilka technik analizy Big Data. Sprawdź ten artykuł.

Ataki DDOS: krótki przegląd

Ataki DDOS: krótki przegląd

Czy jesteś również ofiarą ataków DDOS i nie masz pewności co do metod zapobiegania? Przeczytaj ten artykuł, aby rozwiązać swoje pytania.