目的

Dockerのインストールと動作確認

環境

以下に環境を記載します。

項目
Docker version 17.12.0-ce, build c97c6d6
OS Ubuntu 16.04 Server
CPU x86_64
Mem 8.0 G
Disk 100G

インストール手順

事前準備

  1. パッケージのインデックスをアップデート
    $ sudo apt update
    
  2. 必須パッケージを追加
    $ sudo apt-get install \
        apt-transport-https \
        ca-certificates \
        curl \
        software-properties-common
    
  3. Dockerの公式GPGキーを追加
    $ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
    
  4. フィンガープリントを確認
    $ 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
    
  5. リポジトリを追加
    $ sudo add-apt-repository \
       "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
       $(lsb_release -cs) \
       stable"
    

Dockerのインストール

  1. パッケージのインデックスをアップデート
    $ sudo apt update
    
  2. Dockerをインストール
    最新版をインストールする場合は以下
    
    $ sudo apt install docker-ce
    
    バージョンを指定する場合は以下
    
    $ sudo apt-cache madison docker-ce # バージョン確認
     docker-ce | 17.12.0~ce-0~ubuntu | https://download.docker.com/linux/ubuntu xenial/stable amd64 Packages
    $ sudo apt-get install docker-ce=<VERSION>
    

Dockerのプロキシ設定

本章はプロキシ環境下におけるDockerの設定手順です。
プロキシ環境下でDockerを利用しない場合、本章は読み飛ばしても問題ありません。

  1. proxy設定フォルダの作成
    $ sudo mkdir /etc/systemd/system/docker.service.d
    
  2. proxy設定ファイルの作成
    $ sudo vi /etc/systemd/system/docker.service.d/http-proxy.conf
    下記のようなproxy設定を記載します。
    [Service]
    Environment="HTTP_PROXY=http://proxy.hogehoge.com:8080/" "HTTPS_PROXY=https://proxy.hogehoge.com:8080/" "NO_PROXY=localhost,127.0.0.1,.hogehoge.com"
    
  3. 設定反映
    $ sudo systemctl daemon-reload
    $ sudo systemctl restart docker
    
  4. 設定確認
    $ sudo docker info | grep Proxy
    WARNING: No swap limit support
    HTTP Proxy: http://proxy.hogehoge.com:8080/
    HTTPS Proxy: http://proxy.hogehoge.com:8080/
    No Proxy: localhost,127.0.0.1,.hogehoge.com
    

以上でdocker pull/pushが可能となります。
公式ドキュメントはこちら

Dockerの動作確認

hello-worldというイメージをpullして実行します。

  1. イメージのpull
    $ sudo docker pull hello-world
    
  2. pullしたイメージの確認
    $ sudo docker images
    REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
    hello-world         latest              f2a91732366c        3 months ago            1.85kB
    
  3. イメージの実行
    $ 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 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のインストールからイメージの実行までを説明しました。
次回は、基本的な操作について説明します。

参考

Docker公式ページ