LoginSignup
4
2

More than 5 years have passed since last update.

ElixirとPhoenixを触ってみる(mac版)

Last updated at Posted at 2018-10-26

エンジニア歴数ヶ月の新人がElixirとPhoenixについて書いていきます。

きっかけ

  • 名前にそそられた
  • これから伸びそう
  • 福岡で盛り上がってるみたい

目標

ざっくりと概要を理解してインストールができるようになる

Elixirとは

Elixir:ドキュメント

Elixirは拡張性と保守性の高いアプリケーションを構築するためにデザインされた、動的で関数型のプログラミング言語です。
Elixirは、低レイテンシで分散型のフォールトトレラントシステムや、Webや組み込みシステムの領域で成功を収めている、Erlang VMを利用します。

  • 耐障害性
  • 分散アプリケーションの構築のしやすさ
  • 関数型プログラミング
  • Erlang VM(BEAM)上で動作する言語
  • Erlangのいいとこ取りしている
  • mixなどのビルドシステムがある

Phoenixとは

Phoenix:ドキュメント

  • Elixir製のWEBフレームワーク
  • MVCパターンで書ける
  • RubyonRails風

※ドキュメントを翻訳している方がいました。
Phoenix Framework Guide をなんとなく訳してみた

インストール編

インストールするもの

  • Homebrew
  • Elixir
  • Phoenix
  • PostgreSQL

Homebrew

※途中でOSのパスワード求められます

ターミナル
$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Elixirのインストールとバージョン確認

ターミナル
#Elixirのインストール
$ brew install elixir
Erlang/OTP 21 [erts-10.1.1] [source] [64-bit] [smp:4:4] [ds:4:4:10] [async-threads:1] [hipe] [dtrace]
Elixir 1.7.3 (compiled with Erlang/OTP 21)

#Elixirのバージョン確認
$ elixir --version
Elixir 1.7.3 (compiled with Erlang/OTP 21)

Postgresqlのインストールとバージョン確認

ターミナル
#postgresqlのインストール
$ brew install postgresql

#postgresqlのバージョン確認
$ postgres --versio
postgres (PostgreSQL) 10.5

#起動(?)
$ pg_ctl -D /usr/local/var/postgres start

#DB追加
$ createdb

#ユーザー作成
$ createuser postgres

#接続
$ psql

# DB作成準備
[username=# ALTER USER postgres CREATEDB;

#終了
\q

hexパッケージマネージャとPhoenix本体をインストール

ターミナル
#hexパッケージマネージャ
$ mix local.hex
* creating /Users/****/.mix/archives/hex-0.18.1

#Phoenixインストール
$ mixarchive.installhttps://github.com/phoenixframework/archives/raw/master/phoenix_new.ez
* creating /Users/****/.mix/archives/phoenix_new

プロジェクト作成

ターミナル
#プロジェクト作成
#$ mix phoenix.new [プロジェクト名]
$ mix phoenix.new example

#プロジェクトのディレクトリに移動
$cd example

#ビルドインサーバー起動
$ mix phoenix.server
http://localhost:4000

http://localhost:4000にアクセスして表示されたら終わり!

Error

プロジェクト作成時に以下のエラーが出る

ターミナル
* error command failed to execute, please run the following command again after installation: "npm install && node node_modules/brunch/bin/brunch build"
ユーザーpc:プロジェクト名 ユーザー名$ 

このエラーがでた場合、ビルドインサーバーが起動しないが、以下のコマンドを書くことで起動されるようにりました

ターミナル
#作成したプロジェクトのディレクトリに移動

$cd プロジェクト名
$ mix ecto.create

まとめ

エラーが出たりしましたが、なんとかPhoenixの表示まで行えました。
概要を理解するにもわからない単語が多すぎて、何を言っているのかわからないので
実際に触りながら単語の意味を理解していきます。

参考資料

Elixirを勉強し始めたときに役立つトピック
Elixir + Phoenixでリアルタイムアプリケーションを作ってみるメモ
[翻訳] Railsの弟、Phoenix Frameworkで遊ぼう
Phoenix-Frameworkの基礎知識

4
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
2