Arch Linux¶
Arch Linux におけるインストールは、コミュニティが扱うパッケージを使います。
または、次の AUR パッケージを使います。
docker パッケージを使うと、latest(最新)にタグづけられたバージョンの Docker をインストールします。docker-git パッケージを使うと、現在のマスタ・ブランチから構築します。
依存関係¶
Docker のパッケージは、複数の特定パッケージと依存関係があります。主な依存関係は次の通りです。
- bridge-utils
- device-mapper
- iproute2
- lxc
- sqlite
インストール¶
通常のパッケージはシンプルです。
$ sudo pacman -S docker
これで必要なパッケージすべてが入ります。
AUR パッケージは次のように実行します。
$ yaourt -S docker-git
このコマンドは yaourt のインストール済みを想定しています。インストールしていなければ、あらかじめ Arch ユーザ・リポジトリ の構築と AUR でパッケージをインストールする情報をご覧ください。
Docker の起動¶
docker によって systemd サービスの unit が作成されます。docker サービスを起動するには、
$ sudo systemctl start docker
システムのブート時に開始するには、
$ sudo systemctl enable docker
デーモンのオプション設定¶
HTTP プロキシの追加が必要な場合、Docker のランタイム・ファイルを異なったディレクトリやパーティションに置いてください。あるいは別のカスタマイズ方法として、Systemd の記事 Systemd Docker デーモン・オプションのカスタマイズ から、どのように設定するかをご覧ください。
Docker のネットワークを手動設定する¶
systemd
バージョン 219 以上では、 systemd-network
を使い、手動でネットワークを設定できます。そのため、Docker でコンテナを起動してもネットワークに接続できないかもしれません。バージョン 220 を使う場合、ネットワークの転送設定( net.ipv4.conf.<インターフェース>.forwarding
)がデフォルトでは off です。この設定は IP 転送を阻止します。また、これは Docker がコンテナの中で設定する net.ipv4.conf.all.forward
と競合します。
動作するためには、Docker ホスト上の /usr/lib/systemd/network/
にある <インターフェース>.network
ファイルを編集し(例: /usr/lib/systemd/network/80-container-host0.netowrk
)、次のブロックを追加します。
[Network]
...
IPForward=kernel
...
この設定は、コンテナからと予想される IP 転送を許可するものです。
アンインストール¶
Docker パッケージをアンインストールします。
$ sudo pacman -R docker
Docker パッケージと必要の無い依存関係をアンインストールするには、次のようにします。
$ sudo pacman -Rns docker
上記のコマンドは、イメージ、コンテナ、ボリュームやホスト上の設定ファイルを削除しません。イメージ、コンテナ、ボリュームを削除するには次のコマンドを実行します。
$ rm -rf /var/lib/docker
ユーザが作成した設定ファイルは、手動で削除する必要があります。
参考
- Installation on Arch Linux
- https://docs.docker.com/engine/installation/linux/archlinux/