Perl Hackers Hub
第61回 GitHub ActionsとAmazon ECSを使ったDockerアプリケーションの自動デプロイ(2)
2020年6月18日
初出:WEB+DB PRESS Vol.116(2020年4月24日発売)
Perl, プログラミング言語, GitHub Actions, Amazon ECS, Docker, 開発
前回の
PerlアプリケーションをECS化するポイント
(2)
Perlのベースイメージの選び方
便利なことに, 今回は特にバージョンにこだわる理由がないので, Docker Hubに登録されていないバージョンを使いたい場合は, Dockerイメージを作るうえで考えなければならないのが, とはいえ, ECSにデプロイする場合はソースコードを含めないわけにはいきませんから, そのため, 今回はECSにPerlアプリケーションをデプロイして動作させることが目的ですから, なお, たいていのPerlアプリケーションは複数のCPANモジュールに依存しているので, どのCPANモジュールを使うかは, 今回は, イメージのビルド時にCPANモジュールをインストールするのではなく, PerlでWebアプリケーションを書く場合は, <続きの 2022年6月24日発売perl:5.
をベースイメージとして採用しました。Docker Hubに登録されていないバージョンを使いたい場合
xbuild
などを使ってPerlを手動ビルドしてください。ソースコードをイメージに含める? 含めない?
bind
マウントを使ってローカル開発環境のソースコードをマウントする手法が用いられます。特にスクリプト言語ではビルドを行う必要がないため,CPANモジュールをイメージに含める? 含めない?
Dockerfile
中でcarton install --deploy ment
を実行し,cpanfile.
をもとにモジュールをインストールすることで,cpanfile.
は,cpanfile
別解:ENTRYPOINTでCPANモジュールをインストールするアプローチ
ENTRYPOINT
にシェルスクリプトを設定し,cpanfile.
を書き換えてもイメージのビルドをやりなおす必要がなくなるため,Server::Starterは不要
Server::Starter
をよく用います。Server::Starter
の仕事は,Server::Starter
を利用する必要はありません。本誌最新号をチェック!
WEB+DB PRESS Vol.129
B5判/168ページ
定価1,628円
(本体1,480円+税10%)
ISBN978-4-297-12890-6
Reactの深層
最新バージョンから読み解く! 変わる常識と変わらない思想
できるところから無理なく導入!
小さく始めるデザインシステム
最新レコメンドエンジン総実装
協調フィルタリングから深層学習まで
バックナンバー
Perl Hackers Hub
- 第72回 初学者に伝えたい Perl学習の勘所 ―勉強会を10年運営して培ったノウハウ(2)
- 第72回 初学者に伝えたい Perl学習の勘所 ―勉強会を10年運営して培ったノウハウ(1)
- 第71回 ISUCONの実装から最近のPerlを学ぶ ―わかりやすく変更しやすいコードを実現する考え方と方法(2)
- 第71回 ISUCONの実装から最近のPerlを学ぶ ―わかりやすく変更しやすいコードを実現する考え方と方法(1)
- 第70回 Raisin入門 ―Rest APIマイクロフレームワークを使ってみよう!(2)
- 第70回 Raisin入門 ―Rest APIマイクロフレームワークを使ってみよう!(1)
- 第69回 表形式データを操るUNIXシェル型Perl製コマンド群 ―ビッグデータ時代の汎用的なデータ整備と分析のために(2)
- 第69回 表形式データを操るUNIXシェル型Perl製コマンド群 ―ビッグデータ時代の汎用的なデータ整備と分析のために(1)
- 第68回 他言語のライブラリをPerlに移植する(2)
- 第68回 他言語のライブラリをPerlに移植する(1)