プロジェクト

全般

プロフィール

Javaアプリケーションのデプロイ

jarにビルド済のちいさなjavaアプリケーションをEC2上に配置して起動します。
ソースコードを見たい場合はこのredmineプロジェクトのファイルタブからダウンロードできます(demo_web.zip)。

インスタンスへの接続

TeraTermでインスタンスにSSH接続します。

jarファイルをダウンロードします。

下記コマンドでjarファイルをダウンロードします。

wget https://redmine.apps.kinocoffeeblack.net/attachments/download/180/demo_web.jar

javaのインストール

ここではAWSが提供するOpenJDKのCorrettoの11をインストールします。

sudo yum install java-11-amazon-corretto-headless -y

バージョン確認

ec2_3

参考:Amazon Corretto 11 Amazon Linux2 のインストール手順

デモアプリケーションの起動

SpringBootに含まれる組み込みのTomcatを使って起動します。
※ コマンドの最後に"&"を付けることでバックグラウンドで起動します。

java -jar demo_web.jar &

ec2_4

補足

ここに書いたやり方では、手動で起動しないとjavaアプリケーションが起動しませんので、実際にサーバーとして稼働させる際には向きません。
サービスとして登録することでインスタンスの再起動時などにも自動で起動するようにできます。
AmazonLinux2はCentoOS7等と同様に下記の参考サイトの手順でSpringBootアプリケーションをサービスに登録できます。

Installing Spring Boot applications

補足2

SSHログイン時にupdate可能なyumのパケージがある場合、メッセージで「sudo yum update」を促されます。
EC2はマネージドサービスではないので、OSレベルのセキュリティパッチ適用などもユーザ側の責任で行う必要があります。
"yum-cron"を使うと、手作業でのパッチ適用を自動化して手間をへらすことができます(下記参考サイトを参照) ※ ただし本番環境で更新を自動化するのは要注意(やめた方がよさそう)

AWS EC2 Amazon Linuxのセキュリティパッケージの自動更新設定について