仕事で Phoenixという、Elixirというプログラム言語で作られたWebアプリケーションフレームワークの構築検証した時のメモです。
Elixirは、Erlangという早くて 低いレイヤ向けのプログラム言語に、Ruby風の着ぐるみ(と言っていいのかわかりませんが…)を着せて、Rubyができるエンジニアが低い学習コストで高速なアプリを作れるように開発された、今時のプログラム言語です。
とりあえず今回は、サンプル画面が動いた!というレベルです。
ここからデプロイだったりチューニングだったり運用だったりを整えていかないといけないのですが、その辺はまだキャッチアップできていないので、出来次第ブログに書ければと思います。
感想としては、登場人物(プログラム)が多くて、最初はインストールするのがすごくめんどくさく感じます。 brunch.io という html/css のファイル管理ツールもつかっているため、Node.jsとかもインストールしなければいけません。
EPELリポジトリのインストール
後述する inotifywait をインストールするために、EPELリポジトリを追加します。
sudo yum install epel-release
Gitのインストール
node.jsのバージョン管理ツールであるnvmをインストールするために、Gitをインストールします。
sudo yum install git
Erlang被依存パッケージのインストール
sudo yum install ncurses ncurses-devel openssl openssl-devel gcc-c++ unixODBC unixODBC-devel fop java-1.6.0-openjdk-devel
Erlangのインストール
wget http://www.erlang.org/download/otp_src_18.0.tar.gz
tar xvzf otp_src_18.0.tar.gz
cd otp_src_18.0
./configure
以下は出力されても無視します。GUI開発用とのことで、今回は利用しないためです。
*********************************************************************
********************** APPLICATIONS INFORMATION *******************
*********************************************************************
wx : wxWidgets not found, wx will NOT be usable
*********************************************************************
configureできたらmakeしてインストールします。
sudo make
sudo make install
erl
Ctrl+c -> a
Elixirのインストール
cd ~
git clone https://github.com/elixir-lang/elixir.git
cd elixir
make clean test
mv elixir /opt/
sudo ln -s /opt/elixir/bin/elixir /usr/bin/elixir
sudo ln -s /opt/elixir/bin/iex /usr/bin/iex
sudo ln -s /opt/elixir/bin/elixirc /usr/bin/elixirc
sudo ln -s /opt/elixir/bin/mix /usr/bin/mix
mixとHexのインストール
mixはErlangに付属しています。
mix
mix local.hex
mix hex
nvmのインストール
git clone https://github.com/creationix/nvm.git ~/.nvm
source ~/.nvm/nvm.sh
nvm help
npm(Node.js)のインストール
nvm ls-remote
nvm install v5.3.0
node -v
inotifywaitのインストール
sudo yum install --enablerepo=epel inotify-tools
Phoenixのインストール
mix archive.install https://github.com/phoenixframework/phoenix/releases/download/v1.1.0/phoenix_new-1.1.0.ez
Phoenixアプリテンプレートのセットアップ
mix phoenix.new hello_phoenix
brunch.ioのインストール
cd hello_phoenix
npm install brunch
charmのインストール
cd hello_phoenix
npm install charm
Phoenixアプリ起動
cd hello_phoenix
mix phoenix.server
参考にしたサイト
Dockerに頼らずにCentOS7でElixir開発環境を整備した話 - sat0yu's blog
http://sat0yu.hatenablog.jp/entry/2015/08/09/193241
いまアツいJavaScript!ゼロから始めるNode.js入門〜5分で環境構築編〜
http://liginc.co.jp/web/programming/node-js/85318
ElixirとPhoenixをインストールするメモ - bokuweb.me
http://blog.bokuweb.me/entry/2015/10/03/153300
Phoenix と Elixir をインストールして ブログを作りはじめます
http://www.kaeruspoon.net/articles/1131
Brunch - ultra-fast HTML5 build tool
http://brunch.io/
Installation · Phoenix
http://www.phoenixframework.org/docs/installation
Up And Running · Phoenix
http://www.phoenixframework.org/docs/up-and-running
コメント
コメントを投稿