Kako instalirati Phoenix Framework na CentOS 7

Phoenix je novi okvir za razvoj weba baziran na Elixir-u. Dizajniran je kako bi pružio visoku razvojnu produktivnost, bogate značajke i moćne performanse tijekom izvođenja.

Ovaj vodič će vam pokazati kako instalirati Phoenix na instancu poslužitelja Vultr CentOS 7 u svrhu razvoja.

Preduvjeti

Prije nego nastavite, pretpostavljam da imate:

  • Uvedena nova instanca poslužitelja Vultr CentOS 7.
  • Prijavljen na ovaj CentOS 7 sustav kao nekorijenski sudo korisnik.

Korak 1: Ažurirajte sustav

sudo yum install epel-release
sudo yum update
sudo reboot

Korak 2: Instalirajte Erlang

Prije svega, morate instalirati Erlang na svoj sustav. Phoenix je okvir napisan u programskom jeziku Elixir, a svaka aplikacija koja se temelji na Elixir-u mora biti prevedena u Erlang bajt kod prije nego što se može izvršiti.

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žete potvrditi svoju instalaciju Erlanga sa:

erl

Ova naredba će vas odvesti u Erlang ljusku. Kada pokrenete Erlang ljusku, vidjet ćete sljedeći izlaz.

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

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

Pritisnite Ctrl+Cdvaput za izlaz iz Erlang shell-a.

Korak 3: Instalirajte Elixir

Budući da je verzija Elixira u repozitoriju sustava CentOS 7 YUM prilično zastarjela, trebali biste koristiti službenu unaprijed kompajliranu arhivu Elixira da instalirate najnoviju verziju Elixira.

Preuzmite i raspakirajte najnoviju unaprijed kompajliranu arhivu Elixira:

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

Elixir je sada instaliran na vašem sustavu. Možete pokrenuti Elixir naredbe navođenjem putanje svake naredbe koja se odnosi na Elixir, kao što su:

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

Ova naredba će vam reći verziju Elixira na vašem sustavu.

Radi praktičnosti, možete dodati Elixirovu bin stazu (zajedno s node.js bin stazom za instalaciju) u svoju PATHvarijablu okruženja:

sudo vi /etc/profile

Dodajte sljedeći redak na kraj datoteke:

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

Spremi i zatvori:

:wq

Ponovno učitaj profil:

source /etc/profile

Od sada možete pokrenuti naredbu koja se odnosi na Elixir bez navođenja njezine cjelovite putanje, kao što je:

elixir -v

Sada instalirajte Hex upravitelj paketa pokretanjem mixnaredbe na isti način:

cd ~
mix local.hex

Odgovorite Ytijekom postupka instalacije.

Korak 4: Instalirajte Phoenix

Koristite sljedeću naredbu za instalaciju Phoenixa:

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

Odgovorite Ytijekom postupka instalacije.

Korak 5: Instalirajte Node.js (izborno)

Ako želite koristiti brunch.io, zadani alat za izgradnju Phoenixa, za sastavljanje statičkih sredstava (javascript, css, itd.), morate instalirati 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/

Zapamtite, put Node.js je dodan u varijablu okruženja PATH u koraku 3. Možete testirati instalaciju Node.js ovom naredbom:

node -v

Korak 6: Instalirajte PostgreSQL

Prema zadanim postavkama, Phoenix koristi PostgreSQL za konfiguriranje aplikacija. Na CentOS 7 možete instalirati PostgreSQL koristeći YUM:

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

Pokrenite postgresqluslugu:

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

Postavite lozinku za zadanog korisnika PostgreSQL "postgres":

sudo -u postgres psql

U ljusci PostgreSQL (nakon što se prompt pretvori u postgres=#), postavite lozinku za "postgres":

\password postgres

Unesite lozinku postgresdvaput, koja je preferirana od Phoenixa.

Konačno, upotrijebite sljedeću naredbu da zatvorite PostgreSQL ljusku.

\q

Postavite metodu provjere autentičnosti korisnika baze podataka:

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

Pronađite sljedeći odjeljak:

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

Promijenite metodu provjere autentičnosti IPv4 lokalnih veza na md5:

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

Spremi i zatvori:

:wq

Ponovno pokrenite postgresqluslugu:

sudo systemctl restart postgresql.service

Korak 7: Instalirajte inotify-tools

Koristite sljedeću naredbu da instalirate potrebnu komponentu "inotify-tools":

sudo yum install inotify-tools

Korak 8: Napravite Phoenix aplikaciju

Pretpostavimo da želite stvoriti Phoenix aplikaciju u direktoriju ~/phoenix_project_1:

mix phoenix.new ~/phoenix_project_1

Odgovorite Ytijekom procesa da biste dohvatili i instalirali ovisnosti.

Ova naredba će ~/phoenix_project_1za vas stvoriti direktorij aplikacije . Uđite u imenik i kreirajte bazu podataka:

cd ~/phoenix_project_1
mix ecto.create

Odgovorite Yda instalirate "rebar" tijekom prve izrade baze podataka.

Pokrenite svoju aplikaciju sljedećom naredbom:

mix phoenix.server

Dok održavate trenutnu SSH vezu živom, pokrenite drugu SSH vezu i izmijenite pravila vatrozida kako biste odobrili pristup vašoj aplikaciji:

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

Konačno, upotrijebite web-preglednik da posjetite svoju aplikaciju iz:

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

Time je naš vodič završen. Dobrodošli u Phoenix!

Ostavite komentar

Uspon strojeva: primjene AI u stvarnom svijetu

Uspon strojeva: primjene AI u stvarnom svijetu

Umjetna inteligencija nije u budućnosti, ovdje je upravo u sadašnjosti. U ovom blogu Pročitajte kako su aplikacije umjetne inteligencije utjecale na različite sektore.

DDOS napadi: kratak pregled

DDOS napadi: kratak pregled

Jeste li i vi žrtva DDOS napada i zbunjeni ste metodama prevencije? Pročitajte ovaj članak kako biste riješili svoje upite.

Jeste li se ikada zapitali kako hakeri zarađuju novac?

Jeste li se ikada zapitali kako hakeri zarađuju novac?

Možda ste čuli da hakeri zarađuju mnogo novca, ali jeste li se ikada zapitali kako zarađuju toliki novac? raspravimo.

Revolucionarni Googleovi izumi koji će vam olakšati život.

Revolucionarni Googleovi izumi koji će vam olakšati život.

Želite li vidjeti revolucionarne izume Googlea i kako su ti izumi promijenili život svakog čovjeka danas? Zatim čitajte na blogu kako biste vidjeli Googleove izume.

Friday Essential: Što se dogodilo s automobilima s umjetnom inteligencijom?

Friday Essential: Što se dogodilo s automobilima s umjetnom inteligencijom?

Koncept samovozećih automobila koji će krenuti na ceste uz pomoć umjetne inteligencije san je koji već neko vrijeme imamo. No, unatoč nekoliko obećanja, nigdje ih nema. Pročitajte ovaj blog kako biste saznali više…

Tehnološka singularnost: daleka budućnost ljudske civilizacije?

Tehnološka singularnost: daleka budućnost ljudske civilizacije?

Kako se znanost razvija velikom brzinom, preuzimajući mnoge naše napore, raste i rizik da se podvrgnemo neobjašnjivoj Singularnosti. Pročitajte što bi za nas mogla značiti singularnost.

Funkcionalnosti slojeva referentne arhitekture velikih podataka

Funkcionalnosti slojeva referentne arhitekture velikih podataka

Pročitajte blog kako biste na najjednostavniji način upoznali različite slojeve u arhitekturi velikih podataka i njihove funkcionalnosti.

Evolucija pohrane podataka – Infografika

Evolucija pohrane podataka – Infografika

Metode pohrane podataka su se razvijale možda od rođenja podataka. Ovaj blog pokriva evoluciju pohrane podataka na temelju infografike.

6 nevjerojatnih prednosti posjedovanja pametnih kućnih uređaja u našim životima

6 nevjerojatnih prednosti posjedovanja pametnih kućnih uređaja u našim životima

U ovom digitalnom svijetu, pametni kućni uređaji postali su ključni dio života. Evo nekoliko nevjerojatnih prednosti pametnih kućnih uređaja o tome kako naš život čine vrijednim življenja i jednostavnijim.

Ažuriranje dodataka macOS Catalina 10.15.4 uzrokuje više problema nego što ih rješava

Ažuriranje dodataka macOS Catalina 10.15.4 uzrokuje više problema nego što ih rješava

Nedavno je Apple izdao macOS Catalina 10.15.4 dodatak ažuriranju kako bi riješio probleme, ali čini se da ažuriranje uzrokuje više problema koji dovode do zalijevanja mac strojeva. Pročitajte ovaj članak da biste saznali više