個人用のホームページを作成しました。今後は、そちらの方に整理していきたいと思いますので、よろしくお願いします。
1. Ubuntuにdockerをインストールする
Ubuntuにdockerをインストールする場合、dockerのドキュメントに記載されている方法を利用することができます。ここで、docker-ceをインストールする場合、現在はx86_64 (or amd64)
、 armhf
、 s390x (IBM Z)
がサポートされています。(とドキュメントに書かれているんですけど、リポジトリ を見ると arm64
もサポートされているようです)
現在のドキュメントでは、ちゃんと書かれていますね。(2019/04/08記)
Docker CE is supported on x86_64 (or amd64), armhf, arm64, s390x (IBM Z), and ppc64le (IBM Power) architectures.
実は、このドキュメントに書かれている方法が二つあります。一つは apt
コマンドを使ってリポジトリからインストールする方法で、もう一つは get-docker.sh
スクリプトを使う方法となっています。
2. リポジトリからのインストール
リポジトリからインストールする場合は、次の手順となります。
2.1 パッケージインデックスの更新
最初に、まず apt update
を実行します。
$ sudo apt-get update
2.2 前提ソフトウェアのインストール
続けて、前提ソフトウェアをインストールします。
$ sudo apt-get install -y \
apt-transport-https \
ca-certificates \
curl \
software-properties-common
2.3 GPG 公開鍵のインストール
docker公式のGPG公開鍵をインストールします。
$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
ここで、公開鍵のフィンガープリントを確認しておきます。
$ sudo apt-key fingerprint 0EBFCD88
pub 4096R/0EBFCD88 2017-02-22
Key fingerprint = 9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88
uid Docker Release (CE deb) <docker@docker.com>
sub 4096R/F273FCD8 2017-02-22
2.4 aptリポジトリの設定
ここで apt
コマンド用のリポジトリを設定しますが、dockerではstable
、edge
、test
が公開されています。
ドキュメントの例では stable
として、以下のように設定しています。
x86_64
$ sudo add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable"
armhf
$ sudo add-apt-repository \
"deb [arch=armhf] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable"
2.5 docker-ceのインストール
準備ができましたので、以下のようにしてdocker-ce
をインストールします。
$ sudo apt-get update
$ sudo apt-get install -y docker-ce
3. スクリプトでのインストール
もう一つの方法で、スクリプトからインストールする場合は、以下の方法となります。
$ curl -fsSL get.docker.com -o get-docker.sh
$ sudo sh get-docker.sh
実は、何のためにこの文書を書いたのかと言いますと、上記リポジトリを利用した場合には stable
が例として使われていたのですが、スクリプトを利用した場合には edge
が利用されていました。
実際には、以下のようになっています。
+ sh -c echo "deb [arch=amd64] https://download.docker.com/linux/ubuntu xenial edge" > /etc/apt/sources.list.d/docker.list
このため、どちらの方法でインストールするかによってはバージョンが異なる可能性があります。もちろん、厳密にバージョンを指定する場合には、公式ドキュメントに書かれている方法でバージョンを指定してインストールすることになります。
いずれの方法でも、インストール後にはバージョンを確認しておきます。
$ docker version
4. 一般ユーザでの実行
ドキュメントにも記載されているのですが、root でなく一般ユーザで docker を実行する場合には docker グループに所属している必要があります。そこで、必要であれば以下を実行してから、ログインし直します。
$ sudo usermod -aG docker <アカウント名>
If you would like to use Docker as a non-root user, you should now consider adding your user to the “docker” group with something like:
$ sudo usermod -aG docker your-user
5. download.docker.com の情報
おかげさまで、このページも想像以上に需要がありそうですから download.docker.com の内容を整理してみます。なお、2018/11/14 現在の内容です。
OS | Distribution | Version | CPU |
---|---|---|---|
Linux | CentOS | 7 | aarch64, x86_64 |
Debian | Buster | amd64, arm64, armhf, ppc64el | |
Jessie | |||
Stretch | amd64, arm64, armhf | ||
Wheezy | |||
Fedora | 24 | ||
25 | |||
26 | |||
27 | |||
28 | |||
29 | aarch64, x86_64 | ||
30 | |||
31 | aarch64, x86_64 | ||
Raspbian | Jessie | ||
Stretch | arm64, armhf | ||
Buster | amd64, arm64, armhf, ppc64el | ||
Ubuntu | Artful | ||
Bionic | amd64, arm64, armhf, ppc64el, s390x | ||
Cosmic | |||
Disco | amd64, arm64, armhf, ppc64el | ||
Trusty | |||
Xenial | amd64, arm64, armhf, ppc64el, ppc64le, s390x | ||
Yakkety | |||
Zesty |
とうことで、いつの間にか Raspbian 用のバイナリが公開されていますので、最近では Raspberry Pi 用にはこちらをインストールしています。 CPU は、手を抜いて代表的なバージョンだけ書いてみました。
docker-ce
のバージョンが、なかなか 18.09.2
にならないと思っていて確かめたら debian
の armhf
は 18.09.2
に更新されていたので、raspbian
を使わないで debian
に戻したのでした。(2019/02/26記)