2018.11 頃に書いて放置していた下書きの供養記事。
気が向いたら最近の状況に合わせて更新。
Docker (と Ubuntu) のインストールについてのメモ。
Docker Compose もインストールする。
Ubuntu のインストール
Docker を動作させるための OS をインストールする。
雑誌 (日経Linux) の付録で Ubuntu 18.04 LTS があったのでそれを試すことにした。
付録のものはサーバ版ではなくデスクトップ版だが、不要なパッケージは削除すればいいと思ってそのまま使用した 1 。
ざっと調べた感じではサーバ版とデスクトップ版はカーネルが少し違うらしい。特に問題にはならないはず。
また、サーバ版は日本語インストーラがないらしく、インストール後に言語設定が必要になる。デスクトップ版はその辺を省略できるので少し楽かもしれない。
- OS をインストール。
- デフォルトの構成ではオフィスソフトやゲーム等が入るようなので、それらのない最小構成を選択した。
- インストールが完了するとDVD の自動取り出しと再起動ボタンの表示がされるので、DVD をトレイから外して再起動ボタンを押す。
- 再起動後の作業。
- 諸々のパッケージを更新する。
sudo apt update
sudo apt upgrade
- ネットワーク設定をごにょごにょ。
-
/etc/netplan/
にある YAML ファイルを適宜変更してsudo netplan apply
-
- SSH 接続して作業したい。
sudo apt install openssh-server
- デフォルトのエディタが nano 。人権がない
。Vim を入れる。
sudo apt install vim
-
sudo update-alternatives --config editor
でvim.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
docker
や docker-engine
パッケージをはもう古いもの(なのでアンインストールする必要がある)らしい。おお、マジか。
今は docker-ce
パッケージとのこと。
ググると古いパッケージでインストール手順を紹介している記事が多いので注意しよう。
- 一方で Ubuntu のパッケージ管理用のコマンドが
apt
ではなくapt-get
で記載されてたりする。適宜読み替えていこう。
Supported storage drivers
サポートしているストレージドライバの話。
ストレージドライバとは…? とりあえず後回し。
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 同様にアンインストールが必要になったとき参照する。