Help us understand the problem. What is going on with this article?

Docker のインストール on Ubuntu

2018.11 頃に書いて放置していた下書きの供養記事。
気が向いたら最近の状況に合わせて更新。


Docker (と Ubuntu) のインストールについてのメモ。
Docker Compose もインストールする。

Ubuntu のインストール

Docker を動作させるための OS をインストールする。
雑誌 (日経Linux) の付録で Ubuntu 18.04 LTS があったのでそれを試すことにした。

付録のものはサーバ版ではなくデスクトップ版だが、不要なパッケージは削除すればいいと思ってそのまま使用した 1
ざっと調べた感じではサーバ版とデスクトップ版はカーネルが少し違うらしい。特に問題にはならないはず。
また、サーバ版は日本語インストーラがないらしく、インストール後に言語設定が必要になる。デスクトップ版はその辺を省略できるので少し楽かもしれない。

  1. OS をインストール。
    • デフォルトの構成ではオフィスソフトやゲーム等が入るようなので、それらのない最小構成を選択した。
    • インストールが完了するとDVD の自動取り出しと再起動ボタンの表示がされるので、DVD をトレイから外して再起動ボタンを押す。
  2. 再起動後の作業。
    • 諸々のパッケージを更新する。
      • sudo apt update
      • sudo apt upgrade
    • ネットワーク設定をごにょごにょ。
      • /etc/netplan/ にある YAML ファイルを適宜変更して sudo netplan apply
    • SSH 接続して作業したい。
      • sudo apt install openssh-server
    • デフォルトのエディタが nano 。人権がない :neutral_face: 。Vim を入れる。
      • sudo apt install vim
      • sudo update-alternatives --config editorvim.basic を選択。

Docker のインストール

Docker でググると色々情報が出てくるが、公式サイトに Ubuntu (とその他メジャーな OS) についてのインストール手順があるのでそれを参考にする。

Prerequisites

Docker インストール前の準備。

Docker EE customers

Docker EE (Enterprise Edtion) をインストールしたい人は別のエントリを参考にしてね、という案内文。
今回は Docker CE (Community Edition) をインストールするのでここはスルー。

OS requirements

OS の要件。
今回は x86_64 環境に Ubuntu 18.04 LTS をインストールしてある。ここも特に気にしなくてよし。

Uninstall old versions

dockerdocker-engine パッケージをはもう古いもの(なのでアンインストールする必要がある)らしい。おお、マジか。
今は docker-ce パッケージとのこと。
ググると古いパッケージでインストール手順を紹介している記事が多いので注意しよう。

  • 一方で Ubuntu のパッケージ管理用のコマンドが apt ではなく apt-get で記載されてたりする。適宜読み替えていこう。

Supported storage drivers

サポートしているストレージドライバの話。
ストレージドライバとは…? :kissing:  とりあえず後回し。

Install Docker CE

Docker のインストール。
やり方は下記の 3種類がある。

  • 大抵は Docker リポジトリを設定してそこからインストールする。公式のオススメはコレとのこと。
  • ダウンロードした DEB の Docker パッケージを手動でインストールする。ネットに繋げない状況では便利。
    • ダウンロードはネットに繋げる環境でやる必要がある。
  • テストおよび開発環境ではインストール用のスクリプトを使うこともできる。いくつかリスクがあるので本番環境での使用はオススメしない。

Install using the repository

Docker リポジトリを設定して Docker をインストールする。

$ sudo apt install apt-transport-https ca-certificates curl software-properties-common
$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
$ sudo apt-key fingerprint 0EBFCD88
$ sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
$ sudo apt install docker-ce
$ sudo docker container run --rm hello-world

Install from a package

DEB パッケージからのインストール。今回はスルー。

Install using the convenience script

スクリプトを使用してのインストール。今回はスルー。

Uninstall Docker CE

Docker のアンインストール。
アンインストールが必要になったとき参照する。

Docker インストール後の設定

Manage Docker as a non-root user

sudo なしで docker コマンドを実行するための設定をする 2

$ sudo groupadd docker
groupadd: グループ 'docker' は既に存在します
$ sudo usermod -aG docker $USER

グループの設定を反映させるため、一度ログアウトして再度ログインする。

$ docker container run --rm hello-world

この後 $HOME/.docker を作り直す or オーナーとアクセス権限を変更する旨の手順があるが、
そもそも $HOME/.docker が存在しなかった。
このディレクトリは自動的に作成されるとのことなので、とりあえず気にしないことにした。

Configure Docker to start on boot

OS の起動時に Docker サービスを開始するよう設定する。

$ sudo systemctl enable docker

以降の手順は急いでやる必要はない気がしたので、Docker の設定は一旦ここまでとする。

Docker Compose のインストール

Docker のコンテナ管理をサポートする Docker Compose をインストールする。

Prerequisites

Docker Compose インストール前の準備。
Docker のインストールが終わっていれば特にやることはない。

Install Compose

Docker Compose のインストール。
注意書きにあるように Docker Compose のリリースを確認して最新版をインストールする。
1.23 がまだ RC版だったので、今回はバージョン 1.22 をインストールした。

$ sudo curl -L "https://github.com/docker/compose/releases/download/1.22.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
$ sudo chmod +x /usr/local/bin/docker-compose
$ docker-compose --version

コマンドの補完ができると便利なので Command-line completion もインストールする。

$ sudo curl -L https://raw.githubusercontent.com/docker/compose/1.22.0/contrib/completion/bash/docker-compose -o /etc/bash_completion.d/docker-compose

Master builds

開発中バージョンの 入手方法の紹介。今回は不要なのでスルー。

Upgrading

Docker Compose 1.3 からコンテナの扱いが変わったので
1.2 以前のバージョンを使用していればアップグレードしましょう、というお話。
今回は気にしなくてよい。

Uninstallation

Docker Compose のアンインストール。
Docker 同様にアンインストールが必要になったとき参照する。


  1. インストール後、実際にデスクトップ関連のパッケージを削除して再起動をかけたところ OS が起動しなくなった。色々試したが諦めて OS を再インストールすることにした。デスクトップ版のパッケージ(約1~2GB)はあっても特に困るものではないので、余計なことはしない方がよい。 

  2. 公式の記事で Warning とされているように、本当はよくない。責任の取れる範囲でやりましょう。 

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away