以下のインフラ環境を構築するまでに参考にしたサイトをご紹介します。
1,AWSの全体的な知識を付けるために参考にしたもの
<動画教材>
WEBエンジニアの山浦さんのUdemyの動画教材です。
解説が初心者に優しく、わかりやすいのでおすすめです。
<書籍>
解説がわかりやすいです。
イラスト使って説明してくれるので、なにをやっているのかイメージしやすく、すぐに読み終えることができました。
補足:
ご紹介した2点は内容が共通している部分が多いです。
山浦さんの動画教材の方が、内容が濃いので、そちら1点だけでも良いかもしれません。
2,VPC作成からEC2にデプロイするまで
有料の教材です。
買っても良いと思いますが、chapter3まで無料なのでそこまでやって、その後は次にご紹介する記事を参考にすると良いと思います。
この記事にはかなり助けられました。
これを進めれば、RDSの作成やdocker環境でwebサーバーがnginxのrailsアプリをEC2にデプロイまでできます。
3,ALBを使用してHTTPからHTTPSでサイトにアクセスできるようにする
サイトのHTTPS化には次のサイトを参考にしました。
chapter6でHTTPS化、
chapter7でHTTPでアクセスしてもHTTPSになるように設定できるようになります。
ちなみにサイトのドメインの取得方法は、最初にご紹介した山浦さんの動画で、「お名前.com」でドメインを購入し、Route53と連携する所まで紹介されています。
4,SESを使ったメール送信
AWSのSESを使用してメール送信は以下のサイトを参考にしました。
SES導入はエラーがでまくり、かなり苦戦したので、一応自分のエラーが出なかったproduction.rbを貼っておきます。
creds = Aws::Credentials.new(
ENV['AWS_ACCESS_KEY_ID'],
ENV['AWS_SECRET_ACESS_KEY']
)
Aws::Rails.add_action_mailer_delivery_method(
:aws_sdk,
credentials: creds,
region: ENV['AWS_REGION']
)
config.action_mailer.default_url_options = { host: 'あなたが取得したドメイン名' }
config.action_mailer.delivery_method = :aws_sdk
config.action_mailer.perform_deliveries = true
config.action_mailer.perform_caching = false
config.action_mailer.raise_delivery_errors = true
ポイントは、
config.action_mailer.delivery_method = :aws_sdk
の部分です。
rails aws sesで検索すると、ここが「:ses」になっている記事が多いですが、「:aws_sdk」にしないとエラーが出たので、よかったら参考にしてください。
4,S3に画像をアップロードする
S3はRailsチュートリアルを参考に実装しました。
最後に
山浦さんのUdemyの講座が全体を網羅しているので、山浦さんの教材を軸にご紹介した記事などを参考に進めれば、環境構築はできると思います。