動くものを公開したいのでEC2作った。
目標
とりあえずブラウザでWEB画面が開けるようにする。
手順
とりあえずAWSにログインしてEC2を開きます。
インスタンスの作成をクリックします。
次にインストールするOSを選択します。私は昔からUbuntu大好きなのでUbuntuを選択します!
執筆時のLTSは「18.04」なので、それを選択。
スペック(インスタンスタイプ)は無料枠を選択します。
※私は無料枠終わってますけどね!
インスタンスの詳細に関しては全てデフォルトにします。
変更がある場合は適宜変更してください。
ストレージの追加は特に行わず、ルートボリュームの容量だけ変更します。
セキュリティグループは「HTTP(ポート:80)」を追加します。
インスタンス作成の確認ではセキュリティグループの警告がでますが、無視します。
あとは作成ボタンを押して、完成まで待ちます。
IP固定
新しいIPが取得できたら取得したIPを選択してアドレスの関連付けを設定。
インスタンスには先ほど作成したインスタンスの名前を設定します。
プライベートIPにはインスタンスのIPが表示されていればOKです。
ログイン
まずはSSHでログインしてみます。
Windowsなら「Tera Term」を、macならターミナルを使用してSSH接続します。
今回はmacを使用してターミナルから接続します。
macの場合pemファイルの場所と権限を変更する必要があるので、
場所をユーザー配下の「.ssh」に配置し、権限を変更します。
chmod 600 ~/.ssh/xxx.pem
ssh ubuntu@[IPアドレス] -i ~/.ssh/xxx.pem
※初期ユーザーは「ubuntu」です。
初期設定
とりあえずパッケージ更新。
sudo apt update
sudo apt upgrade
とりあえずzipとunzipをお試しでインストール(まぁどうせ使うし)
sudo apt install zip unzip
問題なくインストールできればOKです。
一応タイムゾーンを変更します
timedatectl
timedatectl set-timezone Asia/Tokyo
nginxインストール
ブラウザでハローワールド出したいのでwebサーバーのnginxを入れます。まぁwebサーバーならなんでも良い。
sudo apt install nginx
nginx -v
nginx version: nginx/1.14.0 (Ubuntu)
sudo systemctl status nginx
● nginx.service - A high performance web server and a reverse proxy server
Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
Active: active (running) since Fri 2019-02-22 21:25:14 JST; 1min 11s ago
Docs: man:nginx(8)
Process: 4866 ExecStart=/usr/sbin/nginx -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
Process: 4854 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
Main PID: 4870 (nginx)
Tasks: 2 (limit: 1152)
CGroup: /system.slice/nginx.service
├─4870 nginx: master process /usr/sbin/nginx -g daemon on; master_process on;
└─4872 nginx: worker process
Feb 22 21:25:14 ip-172-31-35-166 systemd[1]: Starting A high performance web server and a reverse proxy server...
Feb 22 21:25:14 ip-172-31-35-166 systemd[1]: nginx.service: Failed to parse PID from file /run/nginx.pid: Invalid argument
Feb 22 21:25:14 ip-172-31-35-166 systemd[1]: Started A high performance web server and a reverse proxy server.
sudo service nginx stop
sudo service nginx start
sudo service nginx restart
確認
ブラウザからElastic IPで取得したIPアドレスにアクセスしてnginxのページが開いたら成功です。
まとめ
何回もやってるけど、とりあえず形に残してみた。
以上です。
今回作ったEC2のサイトはそのうち公開されるよ!そのうち!!