Ubuntu に Docker を入れる

no extension

ちょっと思いついて onatype-nexus-community/nancyDocker で動かそうと思ったのだが,メイン・マシンに入れてないことに気がついた。 そういや実験用のノートPCに入れただけでメイン・マシンには入れてなかったか。

というわけで,改めて UbuntuDocker を入れようとしたのだが,なんか以前より面倒くさくなってないか? 一応,覚え書きとして残しておこう。

【2022-05-19 追記】 apt-key コマンドが非推奨になったためインストール手順が一部変わっている。 詳しくは以下を参照のこと。

まず Ubuntu の APT 標準リポジトリに入ってるものは微妙に古くてダメぽい感じ。 なので,既に入っている場合はいったん消しておく。

$ sudo apt remove docker docker-engine docker.io containerd runc

まっさらになったらリポジトリの登録から始める。

その前に以下のパッケージが未インストールなら先にインストールする。

sudo apt install apt-transport-https ca-certificates curl software-properties-common

インストールできたら Docker インストール用の OpenPGP 公開鍵をインポートする1

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

一応,鍵指紋を確認しておくね。

$ sudo apt-key fingerprint 0EBFCD88
pub   rsa4096 2017-02-22 [SCEA]
      9DC8 5822 9FC7 DD38 854A  E2D8 8D81 803C 0EBF CD88
uid           [  不明  ] Docker Release (CE deb) <docker@docker.com>
sub   rsa4096 2017-02-22 [S]

無駄にデカい鍵を使ってる気がするが,まぁいいや。 鍵指紋が 9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88 なら無問題。

そして,ようやくリポジトリの登録である。

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

stable の他に nightlytest があるそうだが, Docker 自体で遊ぶわけではないので stable でええじゃろ。 sudo apt update で最新化しておくのをお忘れなく。

あとは普通にインストールすればよい。

sudo apt install docker-ce docker-ce-cli containerd.io

Docker のインストールが成功すると daemon として起動する。 状態を確認するには以下のコマンドでOK。

$ sudo systemctl status docker
● docker.service - Docker Application Container Engine
     Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
     Active: active (running) since Sun 2020-12-20 00:00:00 UTC; 21min ago
TriggeredBy: ● docker.socket
       Docs: https://docs.docker.com
   Main PID: 849 (dockerd)
      Tasks: 14
     Memory: 112.1M
     CGroup: /system.slice/docker.service
             └─849 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock

うんうん,ちゃんと動いてるね。

Docker を自身のアカウントで動かしたい場合は

$ sudo usermod -aG docker username

などとして docker グループに組み入れる。 ログインし直さないと有効にならないので注意。

ほんじゃあ,いよいよ onatype-nexus-community/nancy を動かしてみますかね。

$ go list -json -m all | docker run --rm -i sonatypecommunity/nancy:latest sleuth -n
┏━━━━━━━━━━━━━━━┓
┃ Summary                      ┃
┣━━━━━━━━━━━━━┳━┫
┃ Audited Dependencies     ┃ 9┃
┣━━━━━━━━━━━━━╋━┫
┃ Vulnerable Dependencies  ┃ 0┃
┗━━━━━━━━━━━━━┻━┛

よーし,うむうむ,よーし。

ブックマーク

参考図書

photo
イラストでわかるDockerとKubernetes Software Design plus
徳永 航平 (著)
技術評論社 2020-12-05 (Release 2020-12-05)
Kindle版
B08PNMRXKN (ASIN)

とりあえず Kindle 版を買ったがまだ読んでない。年末年始の課題図書にする予定。

reviewed by Spiegel on 2020-12-20 (powered by PA-APIv5)


  1. インポートする前に公開鍵の中身を gpgpdump で確認することができる。コマンドラインで gpgpdump fetch https://download.docker.com/linux/ubuntu/gpg とすればよい。宣伝でした(笑) ↩︎