Ubuntu18.04に最新版Docker CEのインストール【ドキュメント準拠】

2019年7月12日

現在、Dockerには、商用版のDocker EE(エンタープライズエディション)と無償版のDocker CE(コミュニティエディション)があります。以前、「Docker」「docker engine 」と呼ばれていたものは、今のDocker CEに該当します。

本記事はUbuntu18.04にDocker CE(19.03:2019.7時点)をインストールする方法になります。

参考ページ
Docker Documentation:Get Docker CE for Ubuntu

インストール要件

  • 64-bit版 Ubuntu
  • Versions: 19.04(Disco)、18.10 ( Cosmic )、18.04 LTS ( Bionic )、16.04 LTS ( Xenial )のどれか

手順

(すでに前バージョンのdockerをインストールしていた場合、アンインストールしておく必要があります。)
$ sudo apt-get remove docker docker-engine docker.io containerd runc

(1)apt packageのアップデート

$ sudo apt-get update

(2)HTTPS経由でリポジトリを使えるようにするためのパッケージをインストール

$ sudo apt-get install \
    apt-transport-https \
    ca-certificates \
    curl \
    gnupg-agent \
    software-properties-common

(3)Docker公式のkeyを取得する

$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

以下のコマンドでkey「9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88」が正しく取得されているのを確認する。

$ sudo apt-key fingerprint 0EBFCD88

pub rsa4096 2017-02-22 [SCEA]
9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88
uid [ unknown] Docker Release (CE deb) docker@docker.com
sub rsa4096 2017-02-22 [S]

(4)安定版のリポジトリをセットアップ

Linuxアーキテクチャ(x86_64 / amd64、armhf、arm64、ppc64le、s390x)によってコマンドが異なります。アーキテクチャは$ archで確認できます。

Ubuntuはx86_64です。x86_64もしくはamd64のときのリポジトリのセットアップコマンドは、

$ sudo add-apt-repository \
   "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
   $(lsb_release -cs) \
   stable"

ほかのアーキテクチャの場合は、2行目の[arch=○○○]の部分をそのアーキテクチャに置き換えるだけです。

(5)Docker CEのインストール

最後に以下の順で実行します。

(apt packegeのindexをupdate)
$ sudo apt-get update

(最新版のDocker CEとcontainerをインストール)
$ sudo apt-get install docker-ce docker-ce-cli containerd.io

(dockerを有効化して「Hallo-world」)
$ sudo docker run hello-world

うまくインストールされれば以下の表示がでます。

Hello from Docker!
This message shows that your installation appears to be working correctly.

To generate this message, Docker took the following steps:
1. The Docker client contacted the Docker daemon.
2. The Docker daemon pulled the “hello-world" image from the Docker 3. Hub.(amd64)
3. The Docker daemon created a new container from that image which runs the executable that produces the output you are currently reading.
4. The Docker daemon streamed that output to the Docker client, which sent it to your terminal.

To try something more ambitious, you can run an Ubuntu container with:
$ docker run -it ubuntu bash

Share images, automate workflows, and more with a free Docker ID:
https://hub.docker.com/

For more examples and ideas, visit:
https://docs.docker.com/get-started/

参考

Dockerを入れた後の初期設定
【Ubuntu】dockerをsudoコマンドなしで実行するための設定と注意点

GPUコンテナを利用する際の設定
DockerでGPU対応コンテナを使えるようにする

参考書籍