Hur man installerar Phoenix Framework på CentOS 7

Phoenix är ett framväxande Elixir-baserat webbutvecklingsramverk. Den är designad för att ge hög utvecklingsproduktivitet, rika funktioner och kraftfull körtidsprestanda.

Denna handledning visar dig hur du installerar Phoenix på en Vultr CentOS 7-serverinstans för utvecklingsändamål.

Förutsättningar

Innan du fortsätter antar jag att du har:

  • Implementerade en ny Vultr CentOS 7-serverinstans.
  • Loggade in på detta CentOS 7-system som en icke-root sudo-användare.

Steg 1: Uppdatera systemet

sudo yum install epel-release
sudo yum update
sudo reboot

Steg 2: Installera Erlang

Först och främst måste du installera Erlang på ditt system. Phoenix är ett ramverk skrivet i programmeringsspråket Elixir, och alla Elixir-baserade applikationer måste kompileras till Erlang-bytekod innan de kan köras.

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

Du kan bekräfta din installation av Erlang med:

erl

Detta kommando tar dig till Erlang-skalet. När du startar Erlang-skalet kommer du att se följande utdata.

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

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

Tryck Ctrl+Ctvå gånger för att lämna Erlang-skalet.

Steg 3: Installera Elixir

Eftersom versionen av Elixir i CentOS 7-systemet YUM-förvaret är ganska daterad bör du använda det officiella förkompilerade Elixir-arkivet för att installera den senaste versionen av Elixir.

Ladda ner och packa upp det senaste Elixir förkompilerade arkivet:

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 är nu installerat på ditt system. Du kan köra Elixir-kommandon genom att ange sökvägen för varje Elixir-relaterat kommando, till exempel:

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

Detta kommando kommer att berätta vilken version av Elixir som finns på ditt system.

Som en bekvämlighetssak kan du lägga till Elixirs bin-sökväg (tillsammans med node.js bin-sökväg som ska installeras) till din PATHmiljövariabel:

sudo vi /etc/profile

Lägg till följande rad i slutet av filen:

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

Spara och avsluta:

:wq

Ladda om profilen:

source /etc/profile

Från och med nu kan du köra ett Elixir-relaterat kommando utan att ange dess fullständiga sökväg, till exempel:

elixir -v

Installera nu Hex-pakethanteraren genom att köra mixkommandot på samma sätt:

cd ~
mix local.hex

Svara Yunder installationsprocessen.

Steg 4: Installera Phoenix

Använd följande kommando för att installera Phoenix:

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

Svara Yunder installationsprocessen.

Steg 5: Installera Node.js (valfritt)

Om du vill använda brunch.io, Phoenixs standardbyggverktyg, för att kompilera statiska tillgångar (javascript, css, etc.), måste du installera 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/

Kom ihåg att sökvägen för Node.js lades till i miljövariabeln PATH i steg 3. Du kan testa installationen av Node.js med det här kommandot:

node -v

Steg 6: Installera PostgreSQL

Som standard använder Phoenix PostgreSQL för att konfigurera applikationer. På CentOS 7 kan du installera PostgreSQL med YUM:

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

Starta postgresqltjänsten:

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

Ställ in ett lösenord för standardpostgreSQL-användaren "postgres":

sudo -u postgres psql

I PostgreSQL-skalet (efter att prompten förvandlas till postgres=#), ställ in ett lösenord för "postgres":

\password postgres

Ange lösenordet postgrestvå gånger, vilket är det föredragna för Phoenix.

Använd slutligen följande kommando för att avsluta PostgreSQL-skalet.

\q

Ställ in databasanvändarautentiseringsmetoden:

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

Hitta följande avsnitt:

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

Ändra autentiseringsmetoden för IPv4 lokala anslutningar till md5:

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

Spara och avsluta:

:wq

Starta om postgresqltjänsten:

sudo systemctl restart postgresql.service

Steg 7: Installera inotify-tools

Använd följande kommando för att installera en nödvändig komponent "inotify-tools":

sudo yum install inotify-tools

Steg 8: Skapa en Phoenix-applikation

Anta att du vill skapa en Phoenix-applikation i katalogen ~/phoenix_project_1:

mix phoenix.new ~/phoenix_project_1

Svara Yunder processen för att hämta och installera beroenden.

Detta kommando skapar programkatalogen ~/phoenix_project_1åt dig. Gå in i katalogen och skapa en databas:

cd ~/phoenix_project_1
mix ecto.create

Svar för Yatt installera "rebar" under den första databasen skapas.

Starta din applikation med följande kommando:

mix phoenix.server

Medan du håller den nuvarande SSH-anslutningen vid liv, initiera en annan SSH-anslutning och ändra brandväggsreglerna för att ge åtkomst till din applikation:

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

Använd slutligen en webbläsare för att besöka din applikation från:

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

Det avslutar vår handledning. Välkommen till Phoenix!

Lämna en kommentar

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

Artificiell intelligens är inte i framtiden, det är här i nuet I den här bloggen Läs hur Artificiell intelligens-applikationer har påverkat olika sektorer.

DDOS-attacker: En kort översikt

DDOS-attacker: En kort översikt

Är du också ett offer för DDOS-attacker och förvirrad över de förebyggande metoderna? Läs den här artikeln för att lösa dina frågor.

Har du någonsin undrat hur hackare tjänar pengar?

Har du någonsin undrat hur hackare tjänar pengar?

Du kanske har hört att hackare tjänar mycket pengar, men har du någonsin undrat hur de tjänar den typen av pengar? låt oss diskutera.

Revolutionerande uppfinningar från Google som gör ditt liv lätt.

Revolutionerande uppfinningar från Google som gör ditt liv lätt.

Vill du se revolutionerande uppfinningar av Google och hur dessa uppfinningar förändrade livet för varje människa idag? Läs sedan till bloggen för att se uppfinningar av Google.

Fredag ​​Essential: Vad hände med AI-drivna bilar?

Fredag ​​Essential: Vad hände med AI-drivna bilar?

Konceptet med att självkörande bilar ska ut på vägarna med hjälp av artificiell intelligens är en dröm vi har ett tag nu. Men trots flera löften finns de ingenstans att se. Läs den här bloggen för att lära dig mer...

Technological Singularity: A Distant Future of Human Civilization?

Technological Singularity: A Distant Future of Human Civilization?

När vetenskapen utvecklas i snabb takt och tar över en hel del av våra ansträngningar, ökar också riskerna för att utsätta oss för en oförklarlig singularitet. Läs, vad singularitet kan betyda för oss.

Funktioner för Big Data Reference Architecture Layers

Funktioner för Big Data Reference Architecture Layers

Läs bloggen för att känna till olika lager i Big Data Architecture och deras funktionaliteter på enklaste sätt.

Utveckling av datalagring – Infographic

Utveckling av datalagring – Infographic

Lagringsmetoderna för data har utvecklats kan vara sedan födelsen av data. Den här bloggen tar upp utvecklingen av datalagring på basis av en infografik.

6 fantastiska fördelar med att ha smarta hemenheter i våra liv

6 fantastiska fördelar med att ha smarta hemenheter i våra liv

I denna digitala värld har smarta hemenheter blivit en avgörande del av livet. Här är några fantastiska fördelar med smarta hemenheter om hur de gör vårt liv värt att leva och enklare.

macOS Catalina 10.15.4 tilläggsuppdatering orsakar fler problem än att lösa

macOS Catalina 10.15.4 tilläggsuppdatering orsakar fler problem än att lösa

Nyligen släppte Apple macOS Catalina 10.15.4, en tilläggsuppdatering för att åtgärda problem, men det verkar som om uppdateringen orsakar fler problem som leder till att mac-datorer blir murade. Läs den här artikeln för att lära dig mer