Tutorial ini akan menunjukkan kepada anda cara memasang kerangka kerja Elixir dan Phoenix pada contoh pelayan Vultr Ubuntu 16.04 untuk tujuan pembangunan.
Prasyarat
- Contoh pelayan Vultr Ubuntu 16.04 yang baru
- Log masuk sebagai pengguna sudo bukan akar.
Kemas kini sistem:
sudo apt-get update
Pasang Erlang
Pasang Erlang dengan arahan berikut:
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
Anda boleh mengesahkan pemasangan:
erl
Ini akan membawa anda ke shell Erlang dengan output berikut:
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>
Tekan CTRL+ Cdua kali untuk keluar dari kulit Erlang.
Pasang Elixir
Pasang Elixir dengan apt-get
:
sudo apt-get install elixir
Kini anda boleh mengesahkan pemasangan Elixir:
elixir -v
Ini akan menunjukkan output berikut:
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)
Sekarang anda telah memasang Elixir 1.7.3 pada sistem anda.
Pasang Phoenix
Sekiranya kita baru sahaja memasang Elixir untuk pertama kalinya, kita juga perlu memasang pengurus pakej Hex. Hex diperlukan untuk menjalankan aplikasi Phoenix, dan untuk memasang pergantungan tambahan yang mungkin kita perlukan.
Taipkan arahan ini untuk memasang Hex:
mix local.hex
Sekarang kita boleh terus memasang Phoenix:
mix archive.install https://github.com/phoenixframework/archives/raw/master/phx_new.ez
Pasang Node.js
Phoenix menggunakan brunch.io untuk menyusun aset statik, (javascript, css dan banyak lagi), jadi anda perlu memasang Node.js.
Cara yang disyorkan untuk memasang Node.js adalah melalui nvm
(pengurus versi nod).
Untuk memasang, nvm
kita jalankan arahan ini:
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash
Untuk mengetahui versi Node.js yang tersedia untuk pemasangan, anda boleh menaip perkara berikut:
nvm ls-remote
Ini akan menghasilkan:
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)
...
Pasang versi yang anda mahukan dengan arahan berikut:
nvm install 8.12.0
Nota: Jika anda ingin menggunakan versi yang berbeza, gantikan 8.12.0
dengan versi yang anda mahu.
Katakanlah nvm
untuk menggunakan versi yang baru kita muat turun:
nvm use 8.12.0
Sahkan nod telah berjaya dipasang:
node -v
Pasang PostgreSQL
Anda boleh memasang PostgreSQL dengan mudah menggunakan sistem pembungkusan yang tepat.
sudo apt-get update
sudo apt-get install postgresql postgresql-contrib
Buka cetakan PostgreSQL:
sudo -u postgres psql
Tukar postgres
kata laluan kepada kata laluan yang selamat:
\password postgres
Selepas berjaya menukar kata laluan, anda boleh keluar dari shell PostgreSQL:
\q
Mulakan semula perkhidmatan PostgreSQL:
sudo systemctl restart postgresql.service
Ini adalah pemerhati sistem fail Linux sahaja yang digunakan oleh Phoenix untuk memuat semula kod hidup:
sudo apt-get install inotify-tools
Buat aplikasi Phoenix
Buat aplikasi baru:
mix phoenix.new ~/phoenix_project_test
Jika arahan mengembalikan ralat berikut:
** (Mix) The task "phx.new" could not be found
Anda boleh membetulkannya dengan arahan berikut:
mix archive.install https://raw.githubusercontent.com/phoenixframework/archives/master/phx_new.ez
Sekarang jalankan semula arahan untuk membuat aplikasi Phoenix test:
mix phoenix.new ~/phoenix_project_test
Tukar kata laluan PostgreSQL dalam fail konfigurasi dengan kata laluan yang anda tetapkan pada langkah sebelumnya:
nano config/dev.exs
Permohonan kini akan berjaya dicipta. Pindah ke folder aplikasi dan mulakannya:
cd ~/phoenix_project_test
mix ecto.create
mix phx.server
Sekarang aplikasi Phoenix sedang berjalan dan berjalan di pelabuhan 4000
.