のぴぴのメモ

自分用のLinuxとかの技術メモ

EC2+AmazonLinux2にdockerをセットアップする手順

Amazon Linux2上にdocker環境を作った時のメモです。

手順

インスタンスを立ち上げて、sshログインしてからの手順です。

(1)dockerのインストール

sudo yum -y update
sudo yum -y install docker

(2)dockerサービスの起動

最初の"start"でdockerサービスを開始(dockerデーモン起動)します。次のenableでOS起動時のサービス開始を有効化します。

sudo systemctl start docker.service
sudo systemctl enable docker.service

(3)ec2-userユーザへの権限付与

dockerコマンドでの操作を行うには、dockerグループに所属している必要があります。usermodコマンドで、ec2-userのセカンダリグループにdockerグループを追加します。

sudo usermod -a -G docker ec2-user

ログイン中のセッションには設定が反映されないため、一度ログアウト&ログインをおこない、idコマンドで設定を確認します。

ログアウト&ログイン後に、
$ id
uid=1000(ec2-user) gid=1000(ec2-user) groups=1000(ec2-user),4(adm),10(wheel),190(systemd-journal),994(docker)

(4)確認

dockerコマンドを実行して確認する。実行して、ClientとServerの両方の情報が表示されればOKです。

$ docker version
Client:
 Version:      18.03.1-ce
 API version:  1.37
 Go version:   go1.9.6
 Git commit:   3dfb8343b139d6342acfd9975d7f1068b5b1c3d3
 Built:        Fri Jun 15 23:15:12 2018
 OS/Arch:      linux/amd64
 Experimental: false
 Orchestrator: swarm

Server:
 Engine:
  Version:      18.03.1-ce
  API version:  1.37 (minimum version 1.12)
  Go version:   go1.9.6
  Git commit:   7390fc6/18.03.1-ce
  Built:        Fri Jun 15 23:17:24 2018
  OS/Arch:      linux/amd64
  Experimental: false
  • Server側のエラー
    • "Cannot connect to the Docker daemon...”: dockerデーモンが起動していない可能性。(2)とNW設定を見直し
    • "Got permission denied while trying to connect ":権限がない可能性。(3)を見直し