Πώς να εγκαταστήσετε το Phoenix Framework στο CentOS 7

Το Phoenix είναι ένα αναδυόμενο πλαίσιο ανάπτυξης ιστού που βασίζεται σε Elixir. Έχει σχεδιαστεί για να παρέχει υψηλή παραγωγικότητα ανάπτυξης, πλούσιες δυνατότητες και ισχυρή απόδοση χρόνου εκτέλεσης.

Αυτό το σεμινάριο θα σας δείξει πώς να εγκαταστήσετε το Phoenix σε μια παρουσία διακομιστή Vultr CentOS 7 για σκοπούς ανάπτυξης.

Προαπαιτούμενα

Πριν προχωρήσετε, υποθέτω ότι έχετε:

  • Αναπτύχθηκε μια νέα παρουσία διακομιστή Vultr CentOS 7.
  • Συνδεθήκατε σε αυτό το σύστημα CentOS 7 ως χρήστης sudo χωρίς root.

Βήμα 1: Ενημερώστε το σύστημα

sudo yum install epel-release
sudo yum update
sudo reboot

Βήμα 2: Εγκαταστήστε το Erlang

Πρώτα απ 'όλα, πρέπει να εγκαταστήσετε το Erlang στο σύστημά σας. Το Phoenix είναι ένα πλαίσιο γραμμένο στη γλώσσα προγραμματισμού Elixir και κάθε εφαρμογή που βασίζεται στο Elixir πρέπει να μεταγλωττιστεί σε κώδικα byte Erlang πριν εκτελεστεί.

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

Μπορείτε να επιβεβαιώσετε την εγκατάσταση του Erlang με:

erl

Αυτή η εντολή θα σας μεταφέρει στο κέλυφος Erlang. Κατά την εκκίνηση του κελύφους Erlang, θα δείτε την ακόλουθη έξοδο.

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

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

Πατήστε Ctrl+Cδύο φορές για έξοδο από το κέλυφος Erlang.

Βήμα 3: Εγκαταστήστε το Elixir

Επειδή η έκδοση του Elixir στο αποθετήριο YUM του συστήματος CentOS 7 είναι μάλλον χρονολογημένη, θα πρέπει να χρησιμοποιήσετε το επίσημο προ-μεταγλωττισμένο αρχείο Elixir για να εγκαταστήσετε την πιο πρόσφατη έκδοση του Elixir.

Κατεβάστε και αποσυμπιέστε το πιο πρόσφατο προμεταγλωττισμένο αρχείο 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 είναι πλέον εγκατεστημένο στο σύστημά σας. Μπορείτε να εκτελέσετε εντολές Elixir καθορίζοντας τη διαδρομή κάθε εντολής που σχετίζεται με το Elixir, όπως:

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

Αυτή η εντολή θα σας πει την έκδοση του Elixir στο σύστημά σας.

Για λόγους ευκολίας, μπορείτε να προσθέσετε τη διαδρομή bin του Elixir (μαζί με τη διαδρομή bin node.js to-be-installed) στη PATHμεταβλητή περιβάλλοντος:

sudo vi /etc/profile

Προσθέστε την ακόλουθη γραμμή στο τέλος του αρχείου:

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

Αποθήκευση και έξοδος:

:wq

Επαναφόρτωση του προφίλ:

source /etc/profile

Από εδώ και στο εξής, μπορείτε να εκτελέσετε μια εντολή που σχετίζεται με το Elixir χωρίς να προσδιορίσετε την πλήρη διαδρομή της, όπως:

elixir -v

Τώρα, εγκαταστήστε τον διαχειριστή πακέτων Hex εκτελώντας την mixεντολή με τον ίδιο τρόπο:

cd ~
mix local.hex

Απαντήστε Yκατά τη διαδικασία εγκατάστασης.

Βήμα 4: Εγκαταστήστε το Phoenix

Χρησιμοποιήστε την ακόλουθη εντολή για να εγκαταστήσετε το Phoenix:

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

Απαντήστε Yκατά τη διαδικασία εγκατάστασης.

Βήμα 5: Εγκαταστήστε το Node.js (προαιρετικό)

Εάν θέλετε να χρησιμοποιήσετε το brunch.io, το προεπιλεγμένο εργαλείο δημιουργίας του Phoenix, για τη μεταγλώττιση στατικών στοιχείων (javascript, css, κ.λπ.), πρέπει να εγκαταστήσετε το 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/

Θυμηθείτε, η διαδρομή Node.js προστέθηκε στη μεταβλητή περιβάλλοντος PATH στο βήμα 3. Μπορείτε να δοκιμάσετε την εγκατάσταση του Node.js με αυτήν την εντολή:

node -v

Βήμα 6: Εγκαταστήστε το PostgreSQL

Από προεπιλογή, το Phoenix χρησιμοποιεί την PostgreSQL για τη διαμόρφωση εφαρμογών. Στο CentOS 7, μπορείτε να εγκαταστήσετε το PostgreSQL χρησιμοποιώντας το YUM:

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

Ξεκινήστε την postgresqlυπηρεσία:

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

Ορίστε έναν κωδικό πρόσβασης για τον προεπιλεγμένο χρήστη PostgreSQL "postgres":

sudo -u postgres psql

Στο κέλυφος PostgreSQL (αφού η προτροπή μετατραπεί σε postgres=#), ορίστε έναν κωδικό πρόσβασης για το "postgres":

\password postgres

Εισαγάγετε τον κωδικό πρόσβασης postgresδύο φορές, ο οποίος είναι ο προτιμώμενος του Phoenix.

Τέλος, χρησιμοποιήστε την ακόλουθη εντολή για έξοδο από το κέλυφος PostgreSQL.

\q

Ρυθμίστε τη μέθοδο ελέγχου ταυτότητας χρήστη της βάσης δεδομένων:

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

Βρείτε την παρακάτω ενότητα:

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

Τροποποιήστε τη μέθοδο ελέγχου ταυτότητας των τοπικών συνδέσεων IPv4 σε md5:

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

Αποθήκευση και έξοδος:

:wq

Επανεκκινήστε την postgresqlυπηρεσία:

sudo systemctl restart postgresql.service

Βήμα 7: Εγκαταστήστε το inotify-tools

Χρησιμοποιήστε την ακόλουθη εντολή για να εγκαταστήσετε ένα απαιτούμενο στοιχείο "inotify-tools":

sudo yum install inotify-tools

Βήμα 8: Δημιουργήστε μια εφαρμογή Phoenix

Ας υποθέσουμε ότι θέλετε να δημιουργήσετε μια εφαρμογή Phoenix στον κατάλογο ~/phoenix_project_1:

mix phoenix.new ~/phoenix_project_1

Απαντήστε Yκατά τη διάρκεια της διαδικασίας ανάκτησης και εγκατάστασης εξαρτήσεων.

Αυτή η εντολή θα δημιουργήσει τον κατάλογο της εφαρμογής ~/phoenix_project_1για εσάς. Μπείτε στον κατάλογο και δημιουργήστε μια βάση δεδομένων:

cd ~/phoenix_project_1
mix ecto.create

Απάντηση Yστην εγκατάσταση "rebar" κατά την πρώτη δημιουργία βάσης δεδομένων.

Ενεργοποιήστε την εφαρμογή σας με την ακόλουθη εντολή:

mix phoenix.server

Ενώ διατηρείτε ζωντανή την τρέχουσα σύνδεση SSH, ξεκινήστε μια άλλη σύνδεση SSH και τροποποιήστε τους κανόνες του τείχους προστασίας για να παραχωρήσετε πρόσβαση στην εφαρμογή σας:

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

Τέλος, χρησιμοποιήστε ένα πρόγραμμα περιήγησης ιστού για να επισκεφθείτε την εφαρμογή σας από:

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

Αυτό ολοκληρώνει το σεμινάριο μας. Καλώς ήρθατε στο Phoenix!

Αφήστε ένα σχόλιο

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

Η Τεχνητή Νοημοσύνη δεν είναι στο μέλλον, είναι εδώ ακριβώς στο παρόν Σε αυτό το blog Διαβάστε πώς οι εφαρμογές Τεχνητής Νοημοσύνης έχουν επηρεάσει διάφορους τομείς.

Επιθέσεις DDOS: Μια σύντομη επισκόπηση

Επιθέσεις DDOS: Μια σύντομη επισκόπηση

Είστε επίσης θύμα των επιθέσεων DDOS και έχετε μπερδευτεί σχετικά με τις μεθόδους πρόληψης; Διαβάστε αυτό το άρθρο για να λύσετε τις απορίες σας.

Έχετε αναρωτηθεί ποτέ πώς κερδίζουν χρήματα οι χάκερ;

Έχετε αναρωτηθεί ποτέ πώς κερδίζουν χρήματα οι χάκερ;

Μπορεί να έχετε ακούσει ότι οι χάκερ κερδίζουν πολλά χρήματα, αλλά έχετε αναρωτηθεί ποτέ πώς κερδίζουν τέτοια χρήματα; ας συζητήσουμε.

Επαναστατικές εφευρέσεις από την Google που θα σας φέρουν εύκολη στη ζωή.

Επαναστατικές εφευρέσεις από την Google που θα σας φέρουν εύκολη στη ζωή.

Θέλετε να δείτε επαναστατικές εφευρέσεις της Google και πώς αυτές οι εφευρέσεις άλλαξαν τη ζωή κάθε ανθρώπου σήμερα; Στη συνέχεια, διαβάστε στο blog για να δείτε τις εφευρέσεις της Google.

Friday Essential: Τι συνέβη με τα αυτοκίνητα που κινούνται με AI;

Friday Essential: Τι συνέβη με τα αυτοκίνητα που κινούνται με AI;

Η ιδέα των αυτοκινούμενων αυτοκινήτων να βγαίνουν στους δρόμους με τη βοήθεια της τεχνητής νοημοσύνης είναι ένα όνειρο που έχουμε εδώ και καιρό. Όμως, παρά τις πολλές υποσχέσεις, δεν φαίνονται πουθενά. Διαβάστε αυτό το blog για να μάθετε περισσότερα…

Τεχνολογική μοναδικότητα: Ένα μακρινό μέλλον του ανθρώπινου πολιτισμού;

Τεχνολογική μοναδικότητα: Ένα μακρινό μέλλον του ανθρώπινου πολιτισμού;

Καθώς η Επιστήμη εξελίσσεται με γρήγορους ρυθμούς, αναλαμβάνοντας πολλές από τις προσπάθειές μας, αυξάνονται και οι κίνδυνοι να υποβάλλουμε τον εαυτό μας σε μια ανεξήγητη Ιδιότητα. Διαβάστε τι σημαίνει η μοναδικότητα για εμάς.

Λειτουργίες Αρχιτεκτονικών Επιπέδων Αναφοράς Μεγάλων Δεδομένων

Λειτουργίες Αρχιτεκτονικών Επιπέδων Αναφοράς Μεγάλων Δεδομένων

Διαβάστε το ιστολόγιο για να μάθετε διαφορετικά επίπεδα στην Αρχιτεκτονική Μεγάλων Δεδομένων και τις λειτουργίες τους με τον απλούστερο τρόπο.

Εξέλιξη της αποθήκευσης δεδομένων – Infographic

Εξέλιξη της αποθήκευσης δεδομένων – Infographic

Οι μέθοδοι αποθήκευσης των δεδομένων εξελίσσονται μπορεί να είναι από τη γέννηση των Δεδομένων. Αυτό το ιστολόγιο καλύπτει την εξέλιξη της αποθήκευσης δεδομένων με βάση ένα infographic.

6 εκπληκτικά οφέλη από την ύπαρξη έξυπνων οικιακών συσκευών στη ζωή μας

6 εκπληκτικά οφέλη από την ύπαρξη έξυπνων οικιακών συσκευών στη ζωή μας

Σε αυτόν τον ψηφιακό κόσμο, οι έξυπνες οικιακές συσκευές έχουν γίνει κρίσιμο μέρος της ζωής. Ακολουθούν μερικά εκπληκτικά οφέλη των έξυπνων οικιακών συσκευών σχετικά με το πώς κάνουν τη ζωή μας να αξίζει και να απλοποιείται.

Η ενημέρωση του συμπληρώματος macOS Catalina 10.15.4 προκαλεί περισσότερα προβλήματα από την επίλυση

Η ενημέρωση του συμπληρώματος macOS Catalina 10.15.4 προκαλεί περισσότερα προβλήματα από την επίλυση

Πρόσφατα, η Apple κυκλοφόρησε το macOS Catalina 10.15.4 μια συμπληρωματική ενημέρωση για την επιδιόρθωση προβλημάτων, αλλά φαίνεται ότι η ενημέρωση προκαλεί περισσότερα προβλήματα που οδηγούν σε bricking των μηχανών mac. Διαβάστε αυτό το άρθρο για να μάθετε περισσότερα