土曜日, 1月 07, 2017

Mojolicious::LiteのWebアプリを実行する環境設定

OSはCentOS 7.3。
アプリはStarman(PSGIサーバ)で実行する。

1. perlbrewのインストール

$ curl -kL http://install.perlbrew.pl | bash
$
$ echo "source ~/perl5/perlbrew/etc/bashrc" >> ~/.bashrc
$ source ~/.bashrc


2. 最新安定版Perlをperlbrewでインストール

$ perlbrew available
$
$ perlbrew install 5.24.0
$
$ perlbrew list
$ perlbrew switch 5.24.0
$ which perl
$ perl -v


3. cpanmのインストール

$ perlbrew install-cpanm


4. Mojoliciousのインストール

$ cpanm Mojolicious


5. DBD::ODBCとDBIx::Connectorのインストール

$ cpanm DBD::ODBC
$
$ cpanm DBIx::Connector


6. LWPのインストール

$ cpan Bundle::LWP


7. Starmanのインストール

$ cpanm Starman


8. Starman起動スクリプトサンプル

ログインIDがuser1、アプリのファイルmojo_test.plが/var/www/app/に配置されている前提。
/var/www/appにはuser1の実行・読み・書き権限があること。

----- ここから -----
#!/bin/sh

/usr/bin/su - user1 -c '/home/user1/perl5/perlbrew/perls/perl-5.24.0/bin/starman --port=3000 --daemonize --pid=/var/www/app/pid /var/www/app/mojo_test.pl'
----- ここまで -----

実行は

$ sudo starman_start.sh

のように行う。


9. Starman停止スクリプトサンプル

----- ここから -----
#!/bin/sh

/usr/bin/cat /var/www/app/pid | /usr/bin/xargs /usr/bin/kill
----- ここまで -----

実行は

$ sudo starman_stop.sh

のように行う。


10. Apacheのリバースプロキシの設定サンプル

$ sudo touch /etc/httpd/conf.d/starman.conf
$ sudo vi /etc/httpd/conf.d/starman.conf

----- ここから -----
ProxyRequests Off
ProxyPass /app http://localhost:3000
ProxyPassReverse /app http://localhost:3000
----- ここまで -----

0 件のコメント: