DockerとDocker Composeインストール

OS

Ubuntu18.04LTS

Dockerをインストール

$ sudo apt update  
$ sudo apt install -y \  
     apt-transport-https \  
     ca-certificates \  
     curl \  
     software-properties-common  
$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -  
$ sudo add-apt-repository \  
     "deb [arch=amd64] https://download.docker.com/linux/ubuntu \  
     $(lsb_release -cs) \  
     stable"  
$ sudo apt update  
$ sudo apt-get install docker-ce docker-ce-cli containerd.io  

インストールできたか確認

$ docker version  
 Version:           19.03.5  
 API version:       1.40  
 Go version:        go1.12.12  
 Git commit:        633a0ea838  
 Built:             Wed Nov 13 07:29:52 2019  
 OS/Arch:           linux/amd64  

みたいに表示されればOK

この段階ではコンテナを作る等Dockerで作業するときはすべて管理者権限(sudoをコマンドの前に付ける)が必要になる

  • 後ろでsudo無しの実行をできるようにする

docker コンテナを作ってみる(お試し)

動作確認のためにhello-worldを作成してみる

$ sudo docker run --rm hello-world  

コンテナを消す

$ sudo docker rmi hello-world  

docker compose

$ sudo curl -L "https://github.com/docker/compose/releases/download/xx.xx.xx/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose  

上のxx.xx.xxはGithubでバージョンを確認して適宜変更

$ sudo chmod +x /usr/local/bin/docker-compose  

インストールが成功したか確認

$ docker-compose --version  
docker-compose version 1.25.0, build 0a186604  

sudo無しでdockerを使えるようにする

現状でdocker psを使うと以下のような出力になるはず(sudoを付ければ使えるけど・・・)

$ docker ps  
Got permission denied while trying to connect to the Docker daemon socket at   
unix:///var/run/docker.sock: Get http://%2Fvar%2Frun%2Fdocker.sock/v1.40/containers/json: dial unix /var/run/docker.sock: connect: permission denied  

これをちゃんと使えるようにする
dockerをグループ化(基本,インストール時にされている)

$ sudo groupadd docker  
$ sudo usermod -aG docker $USER  
$ newgrp docker  

これでsudo無しでdockerを使えるはず

$ docker ps  
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES  

おまけ

今まで作ったdockerイメージ一覧を表示

$ docker image ls