LoginSignup
0
3

More than 3 years have passed since last update.

Amazon Linux2にDockerをインストールする

Last updated at Posted at 2020-06-28

Docker初心者の私がAmazon Linux2(AMI)イメージから作成したEC2インスタンスに
Dockerをインストールし色々と触ってみたので備忘録として残します。

・インスタンスで使用するパッケージを更新する

すでに実施済みのインスタンスであれば不要です

実行コマンド

sudo yum update -y

実行結果

・・・
Updated:
  amazon-linux-extras.noarch 0:1.6.11-1.amzn2             amazon-linux-extras-yum-plugin.noarch 0:1.6.11-1.amzn2
  ca-certificates.noarch 0:2019.2.32-76.amzn2.0.2         cloud-init.noarch 0:19.3-3.amzn2
  kernel-tools.x86_64 0:4.14.181-140.257.amzn2            python.x86_64 0:2.7.18-1.amzn2
  python-devel.x86_64 0:2.7.18-1.amzn2                    python-libs.x86_64 0:2.7.18-1.amzn2
  selinux-policy.noarch 0:3.13.1-192.amzn2.6.2            selinux-policy-targeted.noarch 0:3.13.1-192.amzn2.6.2

Complete!

・Amazon Linux ExtrasからDockerをインストールする

Amazon Linux Extrasとは何ぞやということについてはAWS(公式)-Amazon Linux 2-よくある質問の[Amazon Linux Extras]を確認してください。

実行コマンド

sudo amazon-linux-extras install docker

実行結果

・・・
Installed:
  docker.x86_64 0:19.03.6ce-4.amzn2

Dependency Installed:
  containerd.x86_64 0:1.3.2-1.amzn2                  libcgroup.x86_64 0:0.41-21.amzn2  pigz.x86_64 0:2.3.4-1.amzn2.0.1
  runc.x86_64 0:1.0.0-0.1.20200204.gitdc9208a.amzn2

Complete!

この時点ではまだインストールしただけなのでDockerホストは起動していません。
試しに稼働中のDockerコンテナを表示するコマンドを実行してみます。

sudo docker ps

「Dockerデーモンにアクセス出来ません」とエラーになります。

Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?

・Dockerデーモンを起動する

実行コマンド

sudo service docker start

実行結果

Redirecting to /bin/systemctl start docker.service

Dockerデーモンが起動したのか、再度確認してみます。

sudo docker ps

まだ一つもコンテナを起動していないので一つも表示されませんが、Dockerデーモンが稼働していることは確認できました。

CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES

・Dockerコマンドをsudo無しで実行出来るようにする

毎回Dockerコマンド(psなど)を実行するのに"sudo"を付けるのは面倒なので、Dockerグループに
Dockerを利用するユーザーを登録します。
今回はデフォルトで作成される"ec2-user"で行います。

実行コマンド

sudo usermod -a -G docker ec2-user

実行結果(/etc/groupの登録内容を確認)
dockerグループのサブグループにec2-userが含まれていることが確認できる

cat /etc/group | grep docker

docker:x:993:ec2-user

一度ログアウトしてから先程実行したdocker psを実行すると、エラーとならずに実行できる
ことが確認できる。
※ログアウトしないと上記グループ登録が反映されていないことがある


これで作成したEC2インスタンスでDockerを利用する準備が整いました。
Dockerを利用して色々と試して行こうと思います。

0
3
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
0
3