どうも、Java は Hello world 止まりのかっぱ(@inokara)です。
はじめに
せっかく Heroku で Play してみたので Amazon Linux でも Play してみたいと思います。
参考
インスコ
準備
sudo yum -y install java-devel
ダウンロードからのインストール
cd /usr/local/src wget http://downloads.typesafe.com/play/2.2.5/play-2.2.5.zip unzip play-2.2.5.zip cd /usr/local/ ln -s /usr/local/src/play-2.2.5 play export PATH=/usr/local/play:$PATH cat << EOT > /etc/profile.d/play.sh export PLAYHOME=/usr/local/play export PATH=$PATH:${PLAYHOME} EOT
パス打ち(PATH の設定)までやってしまいます。
注意点
上記の設定では root ユーザー以外で play コマンドを叩いた場合には以下のようなエラーが出ます。
-bash: /usr/local/play/play: Permission denied
これを回避するには /usr/local/play/play
に root ユーザー以外でも実行出来る権限を付与する必要がありますが、ドキュメントを読むと以下のように書かれているので根本的な解決ではなさそうです…
Play バイナリパッケージ(公式の最新バージョン) をダウンロードし、書き込み・読み込み権限がある場所に展開してください。(Play の実行中ファイルがアーカイブ内のディレクトリに書き込まれるので、/opt にインストールするのではなく、/usr/local か書き込み権限のある場所にインストールしてください)
実際に運用を想定するとアプリケーションを実行するユーザーを作成して、そのユーザーのホームディレクトリ以下にインストールする方が良さそうです。
確認
play -h
以下のように出力されました。
_ _ __ | | __ _ _ _ | '_ | |/ _' | || | | __/|_|____|__ / |_| |__/ play 2.2.5 built with Scala 2.10.3 (running Java 1.7.0_71), http://www.playframework.com This is not a play application! Use `play new` to create a new Play application in the current directory, or go to an existing application and launch the development console using `play`. You can also browse the complete documentation at http://www.playframework.com.
とりあえず動くようです。
は・じ・め・て・の・アプリ(某 CM 風に)
テストアプリケーション
前回の記事でも作ったようにアプリケーションのひな形を作ってみたいと思います。
cd /opt/ mkdir app
適当なディレクトリをこさえて…
play new hoge
以下のように出力されました。
_ _ __ | | __ _ _ _ | '_ | |/ _' | || | | __/|_|____|__ / |_| |__/ play 2.2.5 built with Scala 2.10.3 (running Java 1.7.0_71), http://www.playframework.com The new application will be created in /opt/app/hoge What is the application name? [hoge] > Which template do you want to use for this new application? 1 - Create a simple Scala application 2 - Create a simple Java application > 2 OK, application hoge is created. Have fun!
確認
アプリケーションの構築に必要なひと通りのファイルが作成されています。
# ls -l hoge/ total 28 drwxr-xr-x 4 root root 4096 Oct 30 16:06 app -rw-r--r-- 1 root root 143 Oct 30 16:06 build.sbt drwxr-xr-x 2 root root 4096 Oct 30 16:06 conf drwxr-xr-x 2 root root 4096 Oct 30 16:06 project drwxr-xr-x 5 root root 4096 Oct 30 16:06 public -rw-r--r-- 1 root root 147 Oct 7 03:57 README drwxr-xr-x 2 root root 4096 Oct 30 16:06 test
ついでに play run
ついでに play run もしてしまいましょう。
cd hoge play run
申し遅れましたが、play run
は開発者モードでアプリケーションを起動するおまじないです。
ちなみに…
play
だけ入力して実行すると Play コンソールと呼ばれる sbt をベースにした開発コンソールで Play アプリケーションの開発をサポートしてくれるツールが起動します。
上記のようにアプリケーション名のプロンプトで任意のコマンドを入力することが可能です。
ブラウザでアクセスすると…
おお。とりあえず動きました。
なんか…
Play というだけあって簡単に Hello World 的なことは出来ました。次はちょっと欲を出してみたいと思います…(多分、なんか作る)
元記事はこちらです。
「Amazon Linux で Play framework をセットアップしてみたばい」