Ce tutoriel vous montrera comment installer les frameworks Elixir et Phoenix sur une instance de serveur Vultr Ubuntu 16.04 à des fins de développement.
Conditions préalables
- Une nouvelle instance de serveur Vultr Ubuntu 16.04
- Connecté en tant qu'utilisateur sudo non root.
Mettez à jour le système:
sudo apt-get update
Installer Erlang
Installez Erlang avec les commandes suivantes:
cd ~
wget https://packages.erlang-solutions.com/erlang-solutions_1.0_all.deb
sudo dpkg -i erlang-solutions_1.0_all.deb
sudo apt-get update
sudo apt-get install esl-erlang
Vous pouvez vérifier l'installation:
erl
Cela vous amènera au shell Erlang avec la sortie suivante:
Erlang/OTP 21 [erts-10.1] [source] [64-bit] [smp:1:1] [ds:1:1:10] [async-threads:1] [hipe]
Eshell V10.1 (abort with ^G)
1>
Appuyez deux fois sur CTRL+ Cpour quitter le shell Erlang.
Installer Elixir
Installez Elixir avec apt-get
:
sudo apt-get install elixir
Vous pouvez maintenant vérifier l'installation d'Elixir:
elixir -v
Cela affichera la sortie suivante:
Erlang/OTP 21 [erts-10.1] [source] [64-bit] [smp:1:1] [ds:1:1:10] [async-threads:1] [hipe]
Elixir 1.7.3 (compiled with Erlang/OTP 20)
Vous avez maintenant Elixir 1.7.3 installé sur votre système.
Installer Phoenix
Si nous venons d'installer Elixir pour la première fois, nous devrons également installer le gestionnaire de packages Hex. Hex est nécessaire pour faire fonctionner une application Phoenix et pour installer les dépendances supplémentaires dont nous pourrions avoir besoin en cours de route.
Tapez cette commande pour installer Hex:
mix local.hex
Nous pouvons maintenant procéder à l'installation de Phoenix:
mix archive.install https://github.com/phoenixframework/archives/raw/master/phx_new.ez
Installez Node.js
Phoenix utilise brunch.io pour compiler les ressources statiques (javascript, css et plus), vous devrez donc installer Node.js.
La façon recommandée d'installer Node.js est via nvm
(gestionnaire de version de nœud).
Pour installer, nvm
nous exécutons cette commande:
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash
Pour connaître les versions de Node.js disponibles pour l'installation, vous pouvez taper ce qui suit:
nvm ls-remote
Cela produira:
Output
...
v8.8.1
v8.9.0 (LTS: Carbon)
v8.9.1 (LTS: Carbon)
v8.9.2 (LTS: Carbon)
v8.9.3 (LTS: Carbon)
v8.9.4 (LTS: Carbon)
v8.10.0 (LTS: Carbon)
v8.11.0 (LTS: Carbon)
v8.11.1 (LTS: Carbon)
v8.11.2 (LTS: Carbon)
v8.11.3 (LTS: Carbon)
v8.11.4 (LTS: Carbon)
-> v8.12.0 (Latest LTS: Carbon)
...
Installez la version que vous souhaitez avec la commande suivante:
nvm install 8.12.0
Remarque: Si vous souhaitez utiliser une version différente, remplacez-la 8.12.0
par la version que vous souhaitez.
Dites nvm
d'utiliser la version que nous venons de télécharger:
nvm use 8.12.0
Vérifiez que le nœud a bien été installé:
node -v
Installer PostgreSQL
Vous pouvez installer PostgreSQL facilement en utilisant le système de conditionnement apt.
sudo apt-get update
sudo apt-get install postgresql postgresql-contrib
Ouvrez le shell PostgreSQL:
sudo -u postgres psql
Modifiez le postgres
mot de passe en un mot de passe sécurisé:
\password postgres
Après avoir réussi à changer le mot de passe, vous pouvez quitter le shell PostgreSQL:
\q
Redémarrez le service PostgreSQL:
sudo systemctl restart postgresql.service
Il s'agit d'un observateur de système de fichiers uniquement Linux que Phoenix utilise pour le rechargement de code en direct:
sudo apt-get install inotify-tools
Créer une application Phoenix
Créer une nouvelle application:
mix phoenix.new ~/phoenix_project_test
Si la commande renvoie l'erreur suivante:
** (Mix) The task "phx.new" could not be found
Vous pouvez le corriger avec la commande suivante:
mix archive.install https://raw.githubusercontent.com/phoenixframework/archives/master/phx_new.ez
Réexécutez maintenant la commande pour créer une application Phoenix test:
mix phoenix.new ~/phoenix_project_test
Modifiez le mot de passe PostgreSQL dans le fichier de configuration avec le mot de passe que vous avez défini à l'étape précédente:
nano config/dev.exs
L'application va maintenant être créée avec succès. Accédez au dossier d'application et démarrez-le:
cd ~/phoenix_project_test
mix ecto.create
mix phx.server
Maintenant, l'application Phoenix est opérationnelle sur le port 4000
.