LoginSignup
5
9

More than 3 years have passed since last update.

EC2をt2.microで立てたときにやることメモ

Posted at

勉強用のEC2インスタンスを間違って停止ではなく終了してしまい、作り直すことがちょこちょこあるため、インスタンスを立ち上げたときにだいたいやることを備忘録として残しておく

各種最新化

sudo yum update -y 

スワップメモリを増やす

t2microのようなメモリが少ないインスタンスの場合、Angularのprodビルドのようにメモリを多く使う処理で落ちてしまうため、スワップメモリを増やして回避します

# 4GBのスワップファイルを作成(メモリが少ないのでbsが多いと失敗する)
sudo dd if=/dev/zero of=/swapfile bs=1M count=4096
# スワップファイルに読み書き権限付与
sudo chmod 600 /swapfile
# スワップ領域のセットアップ
sudo mkswap /swapfile
# スワップ領域を有効化
sudo swapon /swapfile
# スワップ領域の確認
sudo swapon -s

参考:https://aws.amazon.com/jp/premiumsupport/knowledge-center/ec2-memory-swap-file/

swaponすると以下のように指定したサイズでファイルが作成されていることが確認できる

$ sudo swapon -s
Filename                                Type            Size    Used    Priority
/swapfile                               file            4194300 0       -2

freeコマンド実行すると、メモリとして認識されていることが確認できる

$ free
              total        used        free      shared  buff/cache   available
Mem:        1006940       82724       63424         404      860792      771392
Swap:       4194300           0     4194300

スワップを起動時に有効にする

viで/etc/fstabを編集します

sudo vi /etc/fstab

末尾に以下の1行を追加して保存します

/swapfile swap swap defaults 0 0

Gitのインストール

sudo yum install git-all -y

参考:https://git-scm.com/book/ja/v2/%E4%BD%BF%E3%81%84%E5%A7%8B%E3%82%81%E3%82%8B-Git%E3%81%AE%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB

Gitのユーザー設定

git config --global user.name "username"
git config --global user.email xxxx@example.com

参考:https://git-scm.com/book/ja/v2/%E4%BD%BF%E3%81%84%E5%A7%8B%E3%82%81%E3%82%8B-%E6%9C%80%E5%88%9D%E3%81%AEGit%E3%81%AE%E6%A7%8B%E6%88%90

Dockerおよびdocker-composeのインストール

# dockerインストール
sudo yum install docker -y
# dockerサービス開始
sudo service docker start
# sudoなしでdockerコマンド使えるようにする設定
sudo usermod -a -G docker ec2-user
# dockerサービスが自動で起動するように設定
sudo systemctl enable docker

参考:https://docs.aws.amazon.com/ja_jp/AmazonECS/latest/developerguide/docker-basics.html
   http://docs.docker.jp/v1.11/engine/admin/systemd.html

docker-composeのインストール

# バイナリのダウンロード
sudo curl -L "https://github.com/docker/compose/releases/download/1.27.4/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
# 実行権限を付与
sudo chmod +x /usr/local/bin/docker-compose

参考:https://docs.docker.com/compose/install/

このままだとPermissionError: [Errno 13] Permission deniedとなるため、一旦EC2からexitして再接続する

Node.jsのインストール

# インストーラのダウンロード&実行
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.34.0/install.sh | bash
# nvm.sh実行
. ~/.nvm/nvm.sh
# Node.jsのインストール
nvm install node

参考:https://docs.aws.amazon.com/ja_jp/sdk-for-javascript/v2/developer-guide/setting-up-node-on-ec2-instance.html

5
9
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
9