entsukablog公開:2020年1月25日どうも、えんつかです。先日、Laravelで作成したWEBアプリをAWS上にデプロイしてみました。プログラミングをかじり始めた人、WEBアプリ初めて作ったけどどうしよう、と考えている方向けに作成しています。AWS上にデプロイする為には、色々と準備する必要があり、一度で全て覚えるのは結構大変なので、その手法を記載していこうと思います。本記事を読むことで、AWSを用いてLaravelアプリのデプロイ方法がわかると思います。本ブログで紹介している手法は、UdemyにてWEBエンジニアのプロが紹介している講座を参考にさせて頂いています。割愛させて頂いている内容がありますので、詳細について学びたい方はUdemyにて学ぶと良いと思います。動画なので学びやすく、レビューも豊富なので教材として質がとても高いです。Serviceの略で、Amazonが提供するクラウド上での様々なサービスを指します。AWSのサービスには、インフラ(サーバーやネットワーク)周りや画像ファイルのストレージ機能などその他合わせて、なんと100種類程のサービスがあります。ネットがあればネット上でAWSのサービスを受けられるということです。一昔前だとサーバー構築というと現実世界で場所を確保して、サーバー(パソコン)を購入して、LANで配線して、電源ケーブル繋げて〜等、色々準備必要なのですが、ネット上でポチポチするだけで、構成できてしまうということなのです。便利過ぎますよね!Amazonすげぇ!しかしながら、少しばかりお金が発生しますが、基本的には無料枠もあるのでそちらを主に用いてまとめていきます!概要はこれくらいにして、早速手順を説明していきます。前提条件は以下の通りです。AWSへデプロイする為に先に以下の準備を行って下さい。全体像は以下の通りです。デプロイをする為にはインフラ(サーバーやネットワーク)を構築する必要があります。初期設定ネットワークの構築WEBサーバーの構築ドメインの登録DBサーバーの登録WEBサーバーの冗長化Github上のWEBアプリをクローンその他として、AWSは従量課金制度なので、使い過ぎない為の設定やアクセル負荷を分散させる(冗長化)方法についても記載していきます。初期設定の全体像は以下の通りです。CloudWatchで料金アラート設定IAMで作業ユーザーの作成CloudTrailで操作ログの記録AWSは、従量課金制度になっています。使い過ぎるとお金が発生する仕組みです。使用したらAWSから通知を出してくれる設定をはじめに行いましょう。CloudWatchで料金アラート設定AWSからの通知設定はCloudWatchを用います。自分で設定した金額を超えるような場合に、メールを送信してくれます。したら、停止の動作をすれば安心ですね。ログインしてください。ログイン後、以下の画像のように、マイ請求ダッシュボードへ移動です。次に、Billingの設定に移動です。(既に私の画面で請求料金表示されていますが気にしないで下さい)続いて、請求内容を設定していきます。番号順にチェックや記入を進めていきましょう。請求アラートをクリック後にCloudWatchの設定に入ります。請求➡︎アラームの作成の流れです。続いて、メトリクスの選択を行います。メトリクスの選択をクリックし、設定を進めます。概算合計請求額をクリックです。通貨にチェックを入れ、メトリクスの選択をクリックです。したら、画像内の様に超過金額と通知の送信先を入力して、アラームの作成を行なって下さい。私は、ひとまず10USDとしました。すると、メールアドレスの確認をするポップアップが表示されるので、そちらでメールアドレスの認証を進めて下さい。subscriptionです。以上で、料金アラームの設定は完了です。確認することができます。最後に、アカウント➡︎マイアカウントをクリックします。遷移先にIAMユーザー/ロールによる請求情報へのアクセス欄にて編集➡︎IAMアクセスのアクティブ化をチェックし、更新します。これは、次に説明するIAMユーザーでも料金を確認するための設定です。続いて、IAMユーザーの設定です。最初にAWSアカウントを作成されていたかと思いますが、AWS上での操作は、作成したAWSアカウント内で更にアカウントを作成し、作業していくのが好ましいとされています。AWSではじめに作成したユーザーは、ルートユーザーと呼ばれ、ルートユーザー内で作成するユーザーをIAMユーザーと呼びます。理由としては、操作できる範囲を限定しセキュリティを高める為です。ルートユーザーですと全てに対してアクセス権限がありますが、IAMユーザーではアクセス権を限定することができます。これによって、セキュリティを高めるわけです。IAMユーザー設定画面へ移動しましょう。以下の通り、サービス➡︎IAMと入力し、IAMへ移動です。続いて、ユーザーをクリックし、ユーザーの追加を行います。ユーザー情報を入力していきます。ユーザー名:任意設定アクセスの権限:AWSマネジメントコンソールへのアクセス(AWSのWEBページ上で設定するという設定です)コンソールのパスワード:任意設定パスワードのリセットが必要:チェックを外す(サインイン毎回パスワード設定はダルいのでチェックを外します)そして、次へ移動します。次の画面にタグの追加が表示されますが、そのまま次に進みます。(作成するユーザーがどの様なユーザーか情報を追加する為の項目です)次に、作成するユーザー情報を確認して、ユーザーの作成をクリックです。遷移先のページで「ログイン手順をEメールで送信」があるので、こちらをクリックし、ログインする為の情報をメールで送信しておきましょう!メール内にあるサインインURLをクリックし、ログインサイトへ移動し、作成したIAMの情報でログインしてください。以上でIAMユーザーの作成・ログインが完了です!CloudTrailで操作ログの記録これは、いつ、誰が、どんな操作を行ったか記録する為のものになります。したがってチームで開発を行う場合には設定推奨となります。個人開発であれば無視で構いません。サービス欄にcloudtrailを入力し、サービスへ移動します。証跡の表示➡︎証跡の作成へとクリックします。証跡情報を作成していきます。MySQL】アウトプット作品の解説プロフィール『えんつか』です。メーカー研究職からSaasスタートアップのWEBエンジニアへ30代から独学で転身しました。個人ではWEBサイト制作やWEBアプリ開発を受け付けています。ブログでは日々の学び・考え等々をアウトプットしていきます。普段は真面目っぽいツイートしますが、本当ははふざけるのが大好きです。entsukaプロフィールえんつかです。プログラミング・コーディングに魅かれ毎日カタカタやっています。WEB制作ができるレベルになりました。WEB制作受け付けています。気軽にお問合せ下さい。Reserved.Home。