Comment installer le framework Phoenix sur CentOS 7

Phoenix est un nouveau cadre de développement Web basé sur Elixir. Il est conçu pour fournir une productivité de développement élevée, des fonctionnalités riches et de puissantes performances d'exécution.

Ce tutoriel vous montrera comment installer Phoenix sur une instance de serveur Vultr CentOS 7 à des fins de développement.

Conditions préalables

Avant de continuer, je suppose que vous avez:

  • Déploiement d'une nouvelle instance de serveur Vultr CentOS 7.
  • Connecté à ce système CentOS 7 en tant qu'utilisateur sudo non root.

Étape 1: mettre à jour le système

sudo yum install epel-release
sudo yum update
sudo reboot

Étape 2: installez Erlang

Tout d'abord, vous devez installer Erlang sur votre système. Phoenix est un framework écrit dans le langage de programmation Elixir, et toute application basée sur Elixir doit être compilée en code octet Erlang avant de pouvoir être exécutée.

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

Vous pouvez confirmer votre installation d'Erlang avec:

erl

Cette commande vous emmènera dans le shell Erlang. Au démarrage du shell Erlang, vous verrez la sortie suivante.

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

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

Appuyez Ctrl+Cdeux fois pour quitter le shell Erlang.

Étape 3: installer Elixir

Étant donné que la version d'Elixir dans le référentiel YUM du système CentOS 7 est plutôt datée, vous devez utiliser l'archive Elixir précompilée officielle pour installer la dernière version d'Elixir.

Téléchargez et décompressez la dernière archive précompilée 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 est maintenant installé sur votre système. Vous pouvez exécuter des commandes Elixir en spécifiant le chemin de chaque commande liée à Elixir, telle que:

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

Cette commande vous indiquera la version d'Elixir sur votre système.

Par souci de commodité, vous pouvez ajouter le chemin bin d'Elixir (avec le chemin bin node.js à installer) à votre PATHvariable d'environnement:

sudo vi /etc/profile

Ajoutez la ligne suivante à la fin du fichier:

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

Sauvegarder et quitter:

:wq

Recharger le profil:

source /etc/profile

À partir de maintenant, vous pouvez exécuter une commande liée à Elixir sans spécifier son chemin complet, comme:

elixir -v

Maintenant, installez le gestionnaire de packages Hex en exécutant la mixcommande de la même manière:

cd ~
mix local.hex

Répondez Ypendant le processus d'installation.

Étape 4: installer Phoenix

Utilisez la commande suivante pour installer Phoenix:

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

Répondez Ypendant le processus d'installation.

Étape 5: installer Node.js (facultatif)

Si vous souhaitez utiliser brunch.io, l'outil de construction par défaut de Phoenix, pour compiler des actifs statiques (javascript, css, etc.), vous devez installer 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/

N'oubliez pas que le chemin Node.js a été ajouté à la variable d'environnement PATH à l'étape 3. Vous pouvez tester l'installation de Node.js avec cette commande:

node -v

Étape 6: installer PostgreSQL

Par défaut, Phoenix utilise PostgreSQL pour configurer les applications. Sur CentOS 7, vous pouvez installer PostgreSQL à l'aide de YUM:

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

Démarrez le postgresqlservice:

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

Définissez un mot de passe pour l'utilisateur par défaut de PostgreSQL "postgres":

sudo -u postgres psql

Dans le shell PostgreSQL (une fois l'invite transformée en postgres=#), définissez un mot de passe pour "postgres":

\password postgres

Entrez postgresdeux fois le mot de passe , qui est le préféré de Phoenix.

Enfin, utilisez la commande suivante pour quitter le shell PostgreSQL.

\q

Configurez la méthode d'authentification de l'utilisateur de la base de données:

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

Trouvez la section suivante:

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

Modifiez la méthode d'authentification des connexions locales IPv4 en md5:

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

Sauvegarder et quitter:

:wq

Redémarrez le postgresqlservice:

sudo systemctl restart postgresql.service

Étape 7: installer les outils inotify

Utilisez la commande suivante pour installer un composant requis "inotify-tools":

sudo yum install inotify-tools

Étape 8: créer une application Phoenix

Supposons que vous souhaitiez créer une application Phoenix dans le répertoire ~/phoenix_project_1:

mix phoenix.new ~/phoenix_project_1

Répondez Ypendant le processus pour récupérer et installer les dépendances.

Cette commande créera le répertoire d'application ~/phoenix_project_1pour vous. Entrez dans le répertoire et créez une base de données:

cd ~/phoenix_project_1
mix ecto.create

Répondez Ypour installer "rebar" lors de la première création de la base de données.

Lancez votre application avec la commande suivante:

mix phoenix.server

Tout en conservant la connexion SSH actuelle, lancez une autre connexion SSH et modifiez les règles de pare-feu pour accorder l'accès à votre application:

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

Enfin, utilisez un navigateur Web pour visiter votre application à partir de:

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

Cela conclut notre tutoriel. Bienvenue à Phoenix!



Leave a Comment

Comment installer MODX Revolution sur un VPS CentOS 7 LAMP

Comment installer MODX Revolution sur un VPS CentOS 7 LAMP

Vous utilisez un système différent? MODX Revolution est un système de gestion de contenu (CMS) de niveau entreprise rapide, flexible, évolutif, gratuit et open source écrit i

Configurez votre propre réseau privé avec OpenVPN

Configurez votre propre réseau privé avec OpenVPN

Vultr vous offre une connectivité réseau privée impressionnante pour les serveurs fonctionnant au même endroit. Mais parfois, vous voulez deux serveurs dans des pays différents

Comment installer et configurer CyberPanel sur votre serveur CentOS 7

Comment installer et configurer CyberPanel sur votre serveur CentOS 7

Vous utilisez un système différent? Introduction CyberPanel est lun des premiers panneaux de contrôle du marché à la fois open source et utilisant OpenLiteSpeed. Quest-ce que

Installer eSpeak sur CentOS 7

Installer eSpeak sur CentOS 7

Vous utilisez un système différent? ESpeak peut générer des fichiers audio de synthèse vocale (TTS). Ceux-ci peuvent être utiles pour de nombreuses raisons, telles que la création de votre propre Turin

Comment installer Thelia 2.3 sur CentOS 7

Comment installer Thelia 2.3 sur CentOS 7

Vous utilisez un système différent? Thelia est un outil open source pour la création de sites Web de commerce électronique et la gestion de contenu en ligne, écrit en PHP. Code source Thelia i

Comment déployer Google BBR sur CentOS 7

Comment déployer Google BBR sur CentOS 7

BBR (Bottleneck Bandwidth and RTT) est un nouvel algorithme de contrôle de congestion qui est contribué à la pile TCP du noyau Linux par Google. Avec BBR en place,

Comment installer YOURLS sur CentOS 7

Comment installer YOURLS sur CentOS 7

YOURLS (Your Own URL Shortener) est une application open source de raccourcissement dURL et danalyse de données. Dans cet article, nous couvrirons le processus dinstallation

Configurer Nginx-RTMP sur CentOS 7

Configurer Nginx-RTMP sur CentOS 7

Vous utilisez un système différent? RTMP est idéal pour diffuser du contenu en direct. Lorsque RTMP est associé à FFmpeg, les flux peuvent être convertis en différentes qualités. Vultr i

Comment installer LimeSurvey sur CentOS 7

Comment installer LimeSurvey sur CentOS 7

LimeSurvey est un outil de sondage en ligne gratuit et open source qui est largement utilisé pour publier des sondages en ligne et recueillir des commentaires sur les sondages. Dans cet article, je vais

Installer Java SE sur CentOS

Installer Java SE sur CentOS

Introduction Java est une plate-forme logicielle populaire qui vous permet de développer et dexécuter des applications et des applets Java dans divers environnements matériels. Il y a

Comment installer Vanilla Forum sur CentOS 7

Comment installer Vanilla Forum sur CentOS 7

Vous utilisez un système différent? Le forum Vanilla est une application de forum open source écrite en PHP. Il est entièrement personnalisable, facile à utiliser et prend en charge externa

Installation de Netdata sur CentOS 7

Installation de Netdata sur CentOS 7

Vous utilisez un système différent? Netdata est une étoile montante dans le domaine de la surveillance des métriques système en temps réel. Par rapport à dautres outils du même type, Netdata:

Comment installer le serveur Just Cause 2 (JC2-MP) sur CentOS 7

Comment installer le serveur Just Cause 2 (JC2-MP) sur CentOS 7

Dans ce didacticiel, découvrez comment configurer un serveur multijoueur Just Cause 2. Prérequis Veuillez vous assurer que le système est entièrement mis à jour avant de commencer

Comment installer Starbound Server sur CentOS 7

Comment installer Starbound Server sur CentOS 7

Vous utilisez un système différent? Dans ce tutoriel, je vais vous expliquer comment configurer un serveur Starbound sur CentOS 7. Prérequis Vous devez posséder ce jeu sur vous

Installation et configuration de ZNC sur CentOS 7

Installation et configuration de ZNC sur CentOS 7

ZNC est un videur IRC gratuit et open-source qui reste connecté en permanence à un réseau afin que les clients puissent recevoir des messages envoyés lorsquils sont hors ligne. Thi

Comment installer Django sur CentOS 7

Comment installer Django sur CentOS 7

Django est un framework Python populaire pour lécriture dapplications Web. Avec Django, vous pouvez créer des applications plus rapidement, sans réinventer la roue. Si tu veux

Comment configurer ionCube Loader sur CentOS 7

Comment configurer ionCube Loader sur CentOS 7

ionCube Loader est une extension PHP qui permet à un serveur Web dexécuter des fichiers PHP qui ont été encodés à laide dionCube Encoder et qui est requis pour exécuter e

Comment installer Reader Self 3.5 RSS Reader sur un VPS CentOS 7 LAMP

Comment installer Reader Self 3.5 RSS Reader sur un VPS CentOS 7 LAMP

Vous utilisez un système différent? Reader Self 3.5 est un lecteur RSS auto-hébergé simple et flexible, gratuit et open source et une alternative à Google Reader. Reader Sel

Comment installer PufferPanel (Panneau de configuration Minecraft gratuit) sur CentOS 7

Comment installer PufferPanel (Panneau de configuration Minecraft gratuit) sur CentOS 7

Introduction Dans ce tutoriel, installez bien PufferPanel sur notre Vultr VPS. PufferPanel est un panneau de contrôle open source et gratuit pour vous gérer

Comment installer BoltWire CMS sur CentOS 7

Comment installer BoltWire CMS sur CentOS 7

Vous utilisez un système différent? Introduction BoltWire est un système de gestion de contenu gratuit et léger écrit en PHP. Comparé à la plupart des autres gestionnaires de contenu

LIA peut-elle lutter contre un nombre croissant dattaques de ransomware

LIA peut-elle lutter contre un nombre croissant dattaques de ransomware

Les attaques de ransomware sont en augmentation, mais l'IA peut-elle aider à lutter contre le dernier virus informatique ? L'IA est-elle la réponse ? Lisez ici, sachez que l'IA est un boone ou un fléau

ReactOS : est-ce lavenir de Windows ?

ReactOS : est-ce lavenir de Windows ?

ReactOS, un système d'exploitation open source et gratuit est ici avec la dernière version. Cela peut-il suffire aux besoins des utilisateurs de Windows modernes et faire tomber Microsoft ? Découvrons-en plus sur cet ancien style, mais une expérience de système d'exploitation plus récente.

Restez connecté via lapplication de bureau WhatsApp 24 * 7

Restez connecté via lapplication de bureau WhatsApp 24 * 7

Whatsapp a finalement lancé l'application de bureau pour les utilisateurs Mac et Windows. Vous pouvez désormais accéder facilement à Whatsapp depuis Windows ou Mac. Disponible pour Windows 8+ et Mac OS 10.9+

Comment lIA peut-elle faire passer lautomatisation des processus au niveau supérieur ?

Comment lIA peut-elle faire passer lautomatisation des processus au niveau supérieur ?

Lisez ceci pour savoir comment l'intelligence artificielle devient populaire parmi les petites entreprises et comment elle augmente les probabilités de les faire grandir et de donner à leurs concurrents un avantage.

La mise à jour du supplément macOS Catalina 10.15.4 cause plus de problèmes quelle nen résout

La mise à jour du supplément macOS Catalina 10.15.4 cause plus de problèmes quelle nen résout

Récemment, Apple a publié macOS Catalina 10.15.4, une mise à jour supplémentaire pour résoudre les problèmes, mais il semble que la mise à jour cause davantage de problèmes, ce qui entraîne le bridage des machines mac. Lisez cet article pour en savoir plus

13 outils commerciaux dextraction de données de Big Data

13 outils commerciaux dextraction de données de Big Data

13 outils commerciaux d'extraction de données de Big Data

Quest-ce quun système de fichiers de journalisation et comment fonctionne-t-il ?

Quest-ce quun système de fichiers de journalisation et comment fonctionne-t-il ?

Notre ordinateur stocke toutes les données d'une manière organisée connue sous le nom de système de fichiers de journalisation. C'est une méthode efficace qui permet à l'ordinateur de rechercher et d'afficher des fichiers dès que vous appuyez sur la recherche.https://wethegeek.com/?p=94116&preview=true

Singularité technologique : un futur lointain de la civilisation humaine ?

Singularité technologique : un futur lointain de la civilisation humaine ?

Alors que la science évolue à un rythme rapide, prenant le pas sur une grande partie de nos efforts, les risques de nous soumettre à une Singularité inexplicable augmentent également. Lisez, ce que la singularité pourrait signifier pour nous.

Un aperçu de 26 techniques danalyse des mégadonnées : partie 1

Un aperçu de 26 techniques danalyse des mégadonnées : partie 1

Un aperçu de 26 techniques d'analyse des mégadonnées : partie 1

Limpact de lintelligence artificielle dans les soins de santé 2021

Limpact de lintelligence artificielle dans les soins de santé 2021

L'IA dans le domaine de la santé a fait de grands progrès au cours des dernières décennies. Ainsi, l'avenir de l'IA dans les soins de santé continue de croître de jour en jour.