そんな今日この頃でして、、、

コード書いたり映画みたり。努力は苦手だから「楽しいこと」を探していきたい。

HerokuでMojolicious::Lite動かしてみたメモ

深夜にサーバいじりしてうっかりノッて来ると目が冴えちゃってあかんのな・・・

そんなわけで、出社時間までちょっと間があるのでメモ。


HerokuでPerlアプリを動かす

HerokuとはRailsアプリを動作する、ある程度までは無料で使えるPaaS・・・なのだが、実はbuildpackを導入することで色々な言語を使うことができる。

昨年の時点では、あまり日本語のドキュメントが無かったし、そもそもRuby使ってみるのが主目的だったのでSinatraを使っていた。

Sinatra@Heroku とりあえずHerokuで何か動かしたい人向けメモ - そんな今日この頃でして、、、


しかし、やはり本職で使い慣れたPerlを動かせれば夢が広がるなということで、日本語ドキュメントも充実してきたのでやってみた。


Herokuのアカウント作成とかツールの準備とか

このへんは省略。


ローカルにMojolicious::Liteアプリを作ってみる

こっちも省略。

管理画面づくりとmojoな話 - そんな今日この頃でして、、、

Mojolicious::LiteでXslate使ってみたメモ - そんな今日この頃でして、、、


デプロイ用にディレクトリを作り、その中に格納しておく。


buildpackを導入

Perl用のものも何種類かあるが、例示がドンピシャだったのでperlokuを使ってみた。

GitHub - judofyr/perloku: Perl on Heroku


記載されて通り、アプリのスクリプトを入れたディレクトリに下記のファイルを作成。

Makefile.PL

今回はXslate使いたかったのでMojoX::Renderer::Xslateを追加した。

use strict;
use warnings;

use ExtUtils::MakeMaker;

WriteMakefile(
  NAME         => '*アプリのスクリプト*',
  VERSION      => '*バージョン*',
  AUTHOR       => '*名前*',
  EXE_FILES    => ['*アプリのファイル*'],
  PREREQ_PM    => {
    'Mojolicious' => '3.0',
    'MojoX::Renderer::Xslate' => '0.9',
  },
  test         => {TESTS => 't/*.t'}
);


Perloku (chmod +x とかで実行権限与えとく)

#!/bin/sh
./myapp.pl daemon -l http://*:$PORT -m production


また、アプリのスクリプト自体も実行権限与えとく。


デプロイ!

ひとまずディレクトリ下で

$ git init


buildpoack導入

$ heroku create *アプリ名* -s cedar --buildpack http://github.com/judofyr/perloku.git


あとはおなじみ

$ git add .
$ git commit -m 'first commit'
$ git push heroku master


(なんかモジュールが指定したつもりのバージョンじゃないのが気になったが、動作自体には影響なかったので今回はスルー)

開いて確認!

$ heroku open
$ heroku logs




なんとか時間内に書き終わった・・・

HerokuではじめるRailsプログラミング入門

HerokuではじめるRailsプログラミング入門