perlによるwebアプリケーション作成手順 - Catalyst編 - その1

実際にperlでwebアプリケーションを作るにあったての初期の手順を書いていきます。

perlの環境作りは以前書いた、webサーバー初期設定 - perl編 - 城好きwebプログラマーの生態メモこれに基づきます。

今回はフレームワークにCatalystを使います。
数年前からあるメジャーなフレームワークです。

Catalyst + PSGI + Sterlet という環境で起動させます。

まず任意のディレクトリ(今回は/path/toとする)に移動した後にモジュールをインストールするためのディレクトリを作成する。

$ cd /path/to
$ mkdir extlib

なぜローカルにモジュールをインストールするかというと、1つのサーバーで複数のアプリケーションを走らせたいため、別のサーバーに移行しやすくなるためです。

次にCatalystや他の必要なモジュールをインストール。ちょっと時間かかります。

$ cpanm -l extlib Catalyst::Devel local::lib Server::Starter Plack::Handler::Starlet

インストールしたモジュールにパスを通します。

$ export PATH=/path/to/extlib/bin:${PATH}
$ export PERL5LIB=/path/to/extlib/lib/perl5:${PERL5LIB}

アプリを作ります。今回はSampleという名前で。

$ catalyst.pl Sample

これでアプリケションの雛形が作成されました。これで完了です。
実際起動してみましょう。

$ export PERL5LIB=/path/to/Sample/lib:${PERL5LIB}
$ plackup Sample/sample.psgi -p 8008

ポート8008で起動されました。
アクセスしてみると画面が出てるはずです。
出てない場合はたぶんipの設定の問題なので任意のポートをあけるようにしてください。

次にStarletで起動してみます。

start_server --port 8008 -- \
plackup \
-s Starlet \
-E production \
--max-workers=1 \
--max-reqs-per-child=50 \
-a Sample/sample.psgi

またまたポート8008で起動されました。
アクセスしてみましょう。さっきと同じような画面が出るはずです。

これでアプリを起動できるところまでは出来ました。
次にアプリ内での初期設定なのすが、ちょっと長くなったので次回。

続きは以下
perlによるwebアプリケーション作成手順 - Catalyst編 - その2 - 城好きwebプログラマーの生態メモ


perlによるwebアプリケーション作成手順 - Catalyst編 - その1 - 城好きwebプログラマーの生態メモ - 仕事編