高速で軽量な仮想環境を構築できるDockerは,
UbuntuにおけるDocker
2017年7月追記:Dockerのリリースポリシーの変更にあわせて,
Dockerはカーネルのコンテナ技術などを利用して,Dockerfile
」Dockefile
さえあれば,
- ※1
- とはいえこの記事が公開される数日後には,
2017年3月号が発売されます。電子版でもよければGihyo Digital PublishingでPDF版を購入する法もあります。
さてそのDockerを使うためには,
- ※2
- 必ずしもデーモンとクライアントを同じホスト上にインストールする必要はありません。Dockerイメージを立ち上げるLinuxサーバーにDockerエンジンのみをインストールし,
WindowsやmacOS上にインストールしたDockerクライアントから操作することも可能です。本記事ではデーモンもクライアントも同じUbuntuホストマシンにインストールすることを想定して説明します。
- Docker公式のdocker-ce
(旧称:docker-engine) パッケージをインストールする方法 - Ubuntu公式リポジトリにあるdocker.
ioパッケージをインストールする方法 - snapを使ってdockerパッケージをインストールする方法
最新版を使いたいのであれば,
最新版にこだわりがないのであれば,apt
コマンドを実行するだけです。Dockerは昨今のシステムでは必須とも言えるコンポーネントになっているため,
ちなみにdocker.
snap版は,
- ※3
- snap版Dockerの状況はこちらのGoogle Documentにまとまっています。
Dokcer公式のdocker-engineパッケージ
Docker公式のdocker-engineパッケージについては,
必要なパッケージのインストール
まず最初に,
$ sudo apt update $ sudo apt install curl apt-transport-https ca-certificates \ software-properties-common linux-image-generic linux-image-extra-$(uname -r)
curlはこのあとリポジトリのGPG鍵をダウンロードするために使用します。サーバー版だと最初からインストールされていますが,add-apt-repository
コマンドのためにインストールしています。ただし普通にUbuntuをインストールすれば,
最後の2つのカーネル関連のパッケージは,
DockerのStorage Driverは,
「linux-image-generic」
- ※4
- 「generic」
の部分は 「カーネルフレーバー」 と呼ばれます。 「genericフレーバー」 以外にも主にUbuntu Studioで使われる 「lowlatency」, Ubuntu Phoneのエミュレーターとして使われる 「goldfish」, 仮想マシンであるAWS向けに物理デバイス用ドライバーの多くを無効化した 「aws」 が存在します。
カーネルモジュールのうち起動時には使わないものは
Dockerで使うaufsのドライバーはlinux-image-extra-$(uname -r)
」
上記を踏まえた上で,