Com instal·lar el Phoenix Framework a CentOS 7

Phoenix és un marc de desenvolupament web emergent basat en Elixir. Està dissenyat per oferir una alta productivitat de desenvolupament, funcions riques i un rendiment potent en temps d'execució.

Aquest tutorial us mostrarà com instal·lar Phoenix en una instància de servidor Vultr CentOS 7 amb finalitats de desenvolupament.

Requisits previs

Abans de continuar, suposo que teniu:

  • S'ha desplegat una nova instància del servidor Vultr CentOS 7.
  • Inicieu sessió en aquest sistema CentOS 7 com a usuari sudo no root.

Pas 1: actualitzeu el sistema

sudo yum install epel-release
sudo yum update
sudo reboot

Pas 2: instal·leu Erlang

En primer lloc, heu d'instal·lar Erlang al vostre sistema. Phoenix és un marc escrit en el llenguatge de programació Elixir, i qualsevol aplicació basada en Elixir s'ha de compilar al codi de bytes d'Erlang abans que es pugui executar.

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

Podeu confirmar la vostra instal·lació d'Erlang amb:

erl

Aquesta ordre us portarà a l'intèrpret d'ordres Erlang. Quan inicieu l'intèrpret d'ordres Erlang, veureu la sortida següent.

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

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

Premeu Ctrl+Cdues vegades per sortir del shell Erlang.

Pas 3: instal·leu Elixir

Com que la versió d'Elixir al dipòsit YUM del sistema CentOS 7 està força datada, hauríeu d'utilitzar l'arxiu oficial d'Elixir precompilat per instal·lar la darrera versió d'Elixir.

Baixeu i descomprimiu l'últim arxiu precompilat d'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

Elixir ja està instal·lat al vostre sistema. Podeu executar ordres Elixir especificant el camí de cada ordre relacionada amb Elixir, com ara:

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

Aquesta ordre us indicarà la versió d'Elixir al vostre sistema.

Com a qüestió de comoditat, podeu afegir la ruta de la safata d'Elixir (juntament amb la ruta de la safata node.js que cal instal·lar) a la vostra PATHvariable d'entorn:

sudo vi /etc/profile

Afegiu la línia següent al final del fitxer:

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

Desa i surt:

:wq

Torna a carregar el perfil:

source /etc/profile

A partir d'ara, podeu executar una ordre relacionada amb Elixir sense especificar el seu camí complet, com ara:

elixir -v

Ara, instal·leu el gestor de paquets Hex executant l' mixordre de la mateixa manera:

cd ~
mix local.hex

Resposta Ydurant el procés d'instal·lació.

Pas 4: instal·leu Phoenix

Utilitzeu l'ordre següent per instal·lar Phoenix:

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

Resposta Ydurant el procés d'instal·lació.

Pas 5: instal·leu Node.js (opcional)

Si voleu utilitzar brunch.io, l'eina de creació predeterminada de Phoenix, per compilar actius estàtics (javascript, css, etc.), heu d'instal·lar 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/

Recordeu que la ruta de Node.js es va afegir a la variable d'entorn PATH al pas 3. Podeu provar la instal·lació de Node.js amb aquesta ordre:

node -v

Pas 6: instal·leu PostgreSQL

Per defecte, Phoenix utilitza PostgreSQL per configurar aplicacions. A CentOS 7, podeu instal·lar PostgreSQL mitjançant YUM:

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

Inicieu el postgresqlservei:

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

Establiu una contrasenya per a l'usuari PostgreSQL predeterminat "postgres":

sudo -u postgres psql

A l'intèrpret d'ordres de PostgreSQL (després que l'indicador es converteixi en postgres=#), establiu una contrasenya per a "postgres":

\password postgres

Introduïu la contrasenya postgresdues vegades, que és la preferida de Phoenix.

Finalment, utilitzeu l'ordre següent per sortir de l'intèrpret d'ordres PostgreSQL.

\q

Configureu el mètode d'autenticació de l'usuari de la base de dades:

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

Busca la secció següent:

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

Modifiqueu el mètode d'autenticació de les connexions locals IPv4 a md5:

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

Desa i surt:

:wq

Reinicieu el postgresqlservei:

sudo systemctl restart postgresql.service

Pas 7: instal·leu inotify-tools

Utilitzeu l'ordre següent per instal·lar un component necessari "inotify-tools":

sudo yum install inotify-tools

Pas 8: creeu una aplicació Phoenix

Suposem que voleu crear una aplicació Phoenix al directori ~/phoenix_project_1:

mix phoenix.new ~/phoenix_project_1

Respon Ydurant el procés per obtenir i instal·lar dependències.

Aquesta ordre us crearà el directori ~/phoenix_project_1de l'aplicació . Entra al directori i crea una base de dades:

cd ~/phoenix_project_1
mix ecto.create

Resposta Yper instal·lar "rebar" durant la primera creació de la base de dades.

Engegueu la vostra aplicació amb l'ordre següent:

mix phoenix.server

Mentre manteniu viva la connexió SSH actual, inicieu una altra connexió SSH i modifiqueu les regles del tallafoc per concedir accés a la vostra aplicació:

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

Finalment, utilitzeu un navegador web per visitar la vostra aplicació des de:

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

Així conclou el nostre tutorial. Benvingut a Phoenix!

Deixa un comentari

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

La Intel·ligència Artificial no està en el futur, és aquí mateix en el present. En aquest bloc Llegiu com les aplicacions d'Intel·ligència Artificial han afectat diversos sectors.

Atacs DDOS: una breu visió general

Atacs DDOS: una breu visió general

També ets víctima d'atacs DDOS i estàs confós sobre els mètodes de prevenció? Llegiu aquest article per resoldre les vostres consultes.

Us heu preguntat mai com guanyen diners els pirates informàtics?

Us heu preguntat mai com guanyen diners els pirates informàtics?

Potser haureu sentit que els pirates informàtics guanyen molts diners, però us heu preguntat mai com guanyen aquest tipus de diners? anem a discutir.

Invents revolucionaris de Google que us facilitaran la vida.

Invents revolucionaris de Google que us facilitaran la vida.

Vols veure els invents revolucionaris de Google i com aquests invents van canviar la vida de tots els éssers humans actuals? A continuació, llegiu al bloc per veure els invents de Google.

Divendres essencial: què va passar amb els cotxes impulsats per IA?

Divendres essencial: què va passar amb els cotxes impulsats per IA?

El concepte de cotxes autònoms per sortir a les carreteres amb l'ajuda de la intel·ligència artificial és un somni que tenim des de fa temps. Però malgrat les diverses promeses, no es veuen enlloc. Llegeix aquest blog per saber-ne més...

Singularitat tecnològica: un futur llunyà de la civilització humana?

Singularitat tecnològica: un futur llunyà de la civilització humana?

A mesura que la ciència evoluciona a un ritme ràpid, fent-se càrrec de molts dels nostres esforços, també augmenten els riscos de sotmetre'ns a una singularitat inexplicable. Llegeix, què pot significar per a nosaltres la singularitat.

Funcionalitats de les capes darquitectura de referència de Big Data

Funcionalitats de les capes darquitectura de referència de Big Data

Llegeix el blog per conèixer de la manera més senzilla les diferents capes de l'Arquitectura Big Data i les seves funcionalitats.

Evolució de lemmagatzematge de dades – Infografia

Evolució de lemmagatzematge de dades – Infografia

Els mètodes d'emmagatzematge de les dades que han anat evolucionant poden ser des del naixement de les dades. Aquest bloc tracta l'evolució de l'emmagatzematge de dades a partir d'una infografia.

6 avantatges sorprenents de tenir dispositius domèstics intel·ligents a les nostres vides

6 avantatges sorprenents de tenir dispositius domèstics intel·ligents a les nostres vides

En aquest món digital, els dispositius domèstics intel·ligents s'han convertit en una part crucial de les vides. A continuació, es mostren alguns avantatges sorprenents dels dispositius domèstics intel·ligents sobre com fan que la nostra vida valgui la pena i sigui més senzilla.

Lactualització del suplement de macOS Catalina 10.15.4 està causant més problemes que no pas solucions

Lactualització del suplement de macOS Catalina 10.15.4 està causant més problemes que no pas solucions

Recentment, Apple va llançar macOS Catalina 10.15.4, una actualització de suplements per solucionar problemes, però sembla que l'actualització està causant més problemes que provoquen el bloqueig de les màquines Mac. Llegiu aquest article per obtenir més informació