プログラミング その他

AWSへWebアプリケーション(Java)をデプロイする方法(書籍紹介)

投稿日:

対象者

・個人開発者
・ポートフォリオ作成者

手順

こちらの書籍を参考に私自身がAWSにデプロイした手順です。
書籍では図解もあってわかり易く解説されているので、ここでは流れを簡潔に説明します。

すでに知っていて別の方法でやろうとしているなど、求めている情報が違う場合はそっとページを閉じてください。

Webアプリケーションを作る

デプロイするアプリケーションが無いと意味がないので、まずは用意しましょう。
(この記事を読んでいる時点ですでに作成済だと思いますが)

AWSアカウントの作成

AWSのアカウントを作成にはクレジットカードが必要なので用意しておきましょう。

Amazon Elastic Beanstalk

Elastic Beanstalkとは、アプリケーションを簡単にデプロイできるサービスです。
自動スケーリング(規模の増減)や、 モニタリングなどの機能が標準で組み込まれています。

初めて使いましたが、jarをアップロードしたり、RDSの初期設定ができたりと、そんなに悩むことも無くサクッとWebアプリケーションの公開ができました。

Amazon Rout53

DNSサービスのことです。
ドメインを購入しなくても、aws独自のURLで公開はできるのですが、https化したい場合はドメインの取得が必要です。
ドメイン購入をRoute53で行うと設定もスムーズです。

お名前.comやムームードメインで購入したい方はそちらもで大丈夫です。
書籍には、ドメインサービス会社から買ったドメインを設定する方法も書かれています。
7.1.4 振り返り を参照

ドメイン取得はRoute53では1時間くらいで完了しました。
(数時間から数日かかるとどこかで見ましたが、私の場合はそんなにかかりませんでした)

Amazon Certicate Manager

SSL/TSL証明書を発行してくれるサービスです。
独自ドメインを取得しない場合は特に設定不要です。
サービスとして運用していきたい場合はぜひとも設定しておきましょう。

DNSにCNAMEを追加する

書籍(7.2.3 手順)では、「Route53でのレコード作成」というボタンで設定が完了することが書かれています。
しかし、私が実施した時点(2021年5月23日)ではそのようなボタンは無く、手動でDNS設定を追加しましたので、その手順を記述します。

設定ファイルのDL
証明書リクエストのあと、「DNS 設定をファイルにエクスポート」リンクからファイルをDLします。

レコード追加
DLしたCSVファイルの設定値をドメインにレコード追加します。
設定する項目の対応は以下の画像の通りです。
・RecordName :ドメイン名の手前部分を入力します。
・Record Type :CNAMEを選択します。
・Record Value:値に入力します。

この設定が問題なければ、すぐに認証成功します。
 

補足

書籍に書いていなかったのですが、個人的に気になって追加で設定した内容についてです。

HTTPリクエストをHTTPSにリダイレクトする

ALBの設定だけでできるようになったということで、簡単に設定できました。
以下のサイトを参考にしましたので共有します。
ALBの設定でhttpをhttpsにリダイレクトする

 

個人的な所感

この書籍を買ってその日のうちにAWSでWebアプリケーションを公開しました。
もちろん独自ドメインも取得してhttps化しています。

図でわかり易く説明されているので、あまり悩むことはないと思います。
もし全くのインフラ初心者で、用語の意味すらわからないという場合はちょっと苦労するかもしれません。
 

まとめ

  • Amazon Elastic Beanstalkを使うとWebアプリケーションが簡単にデプロイできる。
  • 独自ドメインはAamzon Route53で取得しても、ドメインサービス会社から取得してもよい。
  • 独自ドメインを取得すれば、Amazon Certicate Managerでhttps化することができる。

 

参考書籍

AWSのデプロイ方法を学べる書籍です。

 
最後までお読み頂き、ありがとうございました!
ご意見・ご要望がありましたら、遠慮なくコメント下さい!
もし内容が良かったらランキング評価を頂けると励みになります(^^)

ランキング評価する

-プログラミング, その他
-,

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA


関連記事

【Spring】バリデーション時に、入力値を保持する方法

登録画面で「登録」ボタンを押した後、 バリデーションで引っ掛かってエラーになっても 入力内容を画面に保持して置く方法についてです。 テンプレートエンジンは、Tymeleafを使用しています。 方法とし …

結城浩氏のPrototypeパターン 練習課題6-1の回答例

結城浩氏著作「Java言語で学ぶデザインパターン入門」 Prototypeパターン 練習課題6-1の回答例です。 課題の概要 UnderLinePen、MessageBoxクラスのcreateClon …

月300時間稼働!炎上プロジェクトで学んだこと

想定読者 ・炎上プロジェクトを回避したいPM ・避けられない炎上のダメージを如何に小さくするかを知りたい方 ・炎上する原因を事前に察知し、きな臭いプロジェクトを避けるようにしたい方   状況 …

【Java入門】例外処理の基本的な操作まとめ

概要 例外処理の基本的な知識と操作について記載しています。 例外処理の構文 try~catch~finally ◆基本構文

・fina …

【Java入門】Stringの使い方まとめ

概要 Javaでもっともよく使う基本的なオブジェクト型はStringではないでしょうか。 Stringには便利なメソッドが多数用意されているので、それらをうまく使えるようになることはコーディングの上達 …

■運営者プロフィール
IT業界10年のエンジニア。
PHP -> VBA -> Javaと渡り歩いてきて、今はJavaをメインにフリーランスエンジニアとして活躍中!

[保有資格]
・Java SE 11 Gold

一度はエンジニアを辞めざるを得なかった私が再びエンジニアとして復活した数奇な物語

SpringFramworkの良書

■おすすめ教材
Javaの基本を学んだ人が、次のステップとして読む本(中級者向け)

※SpringはJavaのFrameworkの1つです。
変更のしやすさ、保守性の高さが特徴です。