##インスタンスを作成する
- サービス検索で、『EC2』と入力する。
- 『インスタンス起動』ボタンを押下。
- マシンイメージ (AMI)選択画面で、『Amazon Linux 2 AMI (HVM)』を選択。
- インスタンスタイプの選択は、デフォルトのまま。
- セキュリティグループの設定画面で、『ルールの追加』ボタンを押下し、以下の3つを設定する。
- SSHタイプのソースを『カスタム 3.112.23.0/29』に設定する
- HTTPSタイプのソースを『マイIP』に設定する
- HTTPタイプのソースを『マイIP』に設定する
- 『確認と作成』ボタンを押下する
- キーペアを新しく作成して、ダウンロードする(サーバーに接続する鍵になるので大事に保存しておく)
- インスタンスを作成する
####以下の作業はSSH接続して行う。
今回は、EC2 Instance Connectを使用してSSH接続する。
##必要なパッケージをインストール
#####パッケージ情報の更新を行います
$ sudo yum -y update
#####GitとWebサーバー(Apache)をインストール
$ sudo yum install -y git curl httpd unzip
#####Gitをインストールしましたので次にGitの共通設定を行って行きます。
$ git config --global user.name "{gitHubのユーザ名}"
$ git config --global user.email "{gitHubのメールアドレス}"
#####タイムゾーンを変更する
$ sudo timedatectl set-timezone Asia/Tokyo
#####PHP7.3をインストール
途中で入力を求められるので、Enterを押す
$ sudo amazon-linux-extras install php7.3 -y
$ sudo yum install -y php-mbstring php-xml php-gd php-xml
$ php -v
#####Compsoerをインストールする
$ curl -sS https://getcomposer.org/installer | php
$ sudo mv composer.phar /usr/local/bin/composer
$ which composer
/usr/local/bin/composer
##アプリケーションをインストール
GitをCloneして、Composerのパッケージをインストールする。
####ssh鍵の作成
$ ssh-keygen
下記のように鍵の保存位置を聞かれた場合、デフォルトの位置で大丈夫なのでそのままEnterを押す。
$ Enter file in which to save the key (/home/yourname/.ssh/id_rsa):
次にパスフレーズの入力を求められますが、空で大丈夫な場合はそのままEnterを押す。
以上でSSH鍵の作成は完了する。
以下のコマンドでファイルが作成されているのが確認。
$ ls /home/ec2-user/.ssh
authorized_key id_rsa id_rsa.pub
id_rsaは秘密鍵になるので、漏洩しないように注意。
####公開鍵をGitHubに登録
#####公開鍵を表示
$ cat .ssh/id_rsa.pub
上記で表示される内容をコピー。
#####GitHubに連携。
GitHubのアプリケーションのリポジトリページを開く。
Settingsページを開きます。
Deploy Keyというメニューを選択して、Add deploy Keyをクリックする。
適当なタイトルをつけ、先ほどコピーした内容をKeyに貼り付ける。
####サーバー内に設置
GitHunのリポジトリで接続先をコピーする。
サーバー内でCloneします。今回は『/var/www/aws_app』に配置します。
wwwフォルダの所有権を現在ログインしているアカウントに変更しておきます。
$ sudo chown ec2-user:ec2-user /var/www
そちらに移動してcloneします。
$ cd /var/www
$ git clone 接続先(https://github.com/・・・・・.git) app
問題なければComposerでインストールする
$ cd app
$ composer install --no-dev
Cloneした状態だとstorageフォルダの書き込み権限がついていないため、書き込み権限を付与します。
$ chmod 0777 storage
またそのフォルダも検索&書き込み権限付与をおこないます。
$ find storage -type d -exec chmod 0777 {} \;
以上でアプリケーションの設置は完了。