komeの備忘録

東大理系大学院生の技術ブログ。たまに趣味。

Ubuntu16.04に最新版Dockerをインストールする【Ubuntu18.04確認済み】

f:id:komee:20180228214729j:plain 公式リファレンスに従ってUbuntu16.04に最新版のDockerをインストールしたときのメモ

【2018/10/24追記】 Ubuntu18.04でも動作確認済み

環境
OS: Ubuntu16.04 LTS Server、Ubuntu18.04Desktop
CPU: Intel x86_64

目次

Dockerとは

www.docker.com 一言で言うと、コンテナのマネージャ。コンテナ型の仮想環境を作成・配布・実行するためのプラットフォーム。go-langで書かれていて、比較的新しい技術。環境構築などを一瞬で終わらせられる、というかdocker imageを持ってきた瞬間に、そのimage上で環境構築が終わっていたりして、活用方法は無限大になる。楽しい。

詳しくは、強い人のホームページを見てください。

Dockerをインストールする

最初に言っておくが、唐突にaptでもインストールできてしまうが、最初は絶対にしてはいけない

何も準備せずにaptを用いてインストールしたDockerは、最新版ではないからである。

今回は、最新版のDockerをインストールする手順を示す。

aptの更新

なにはともあれ、aptのリポジトリを最新にする。

$ sudo apt update

必要なアプリケーションをインストールする

$ sudo apt install apt-trasport-https ca-certificates curl software-properties-common

次に、curlを用いてDockerの公式GPG keyをダウンロードし、apt-key に追加する。 ダウンロードが完了すると、OKと表示される。

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

その後、追加したkeyのfingerprintが 9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88 であることを確認する。末尾8文字で検索すると出現する。

$ 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

リポジトリの追加

いよいよDockerをインストールするためのリポジトリを追加する。

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

Docker-ceのインストール

$ sudo apt update
$ sudo apt install docker-ce

ちなみにdocker-ceのceは、Community Editionの略。つまり、無償利用のdockerをさす。対して商用利用のdockerは、ee、すなわちEnterprise Editionとなる。

動作確認

$ sudo docker run hello-world
Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
ca4f61b1923c: Pull complete
Digest: sha256:083de497cff944f969d8499ab94f07134c50bcf5e6b9559b27182d3fa80ce3f7
Status: Downloaded newer image for hello-world:latest

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 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://cloud.docker.com/

For more examples and ideas, visit:
 https://docs.docker.com/engine/userguide/

Dockerをインストールできた。

次回は、今回インストールしたDockerを用いて、お手軽に最近流行りのDeep Learningできるようにしたメモを記す。

参考にしたサイト

docs.docker.com