Dockerのインストール

Windowsの場合

Docker Toolboxを使う。

https://www.docker.com/toolbox

Boot2dockerを使うのは現在非推奨。

その後、コマンドプロンプトから、docker-machineでdockerサーバを立てる。

> docker-machine create --driver virtualbox dev

VirtualBoxにdevという仮想マシンができる。

以後、以下のコマンドで起動、終了できる。

> docker-machine start dev
> docker-machine stop dev

dockerコマンドを、この仮想マシンに向けさせるには、以下のコマンドで表示されるコマンドをコピーして入力する。–shell引数は、コマンドプロンプトの場合はcmd、Powershellの場合はpsを入力する。

> docker-machine env --shell cmd dev

もし、exportで始まるコマンドが表示された場合は、exportをsetに置き換えて実行する。

> docker-machine env --shell cmd dev
set -x DOCKER_TLS_VERIFY 1;
set -x DOCKER_HOST tcp://192.168.99.101:2376;
set -x DOCKER_CERT_PATH= /Users/user/.docker/machines/dev;
set -x DOCKER_MACHINE_NAME dev;
# Run this command to configure your shell:

> set -x DOCKER_TLS_VERIFY 1;
> set -x DOCKER_HOST tcp://192.168.99.101:2376;
> set -x DOCKER_CERT_PATH Users/user/.docker/machines/dev;
> set -x DOCKER_MACHINE_NAME dev;

以下が実行できれば構築完了。

> docker run hello-world

Macの場合

docker toolboxも使えるが、アップグレードの手軽さから、homebrewを使った方が良い。

Homebrewのインストールはこちらを参照

$ brew install docker docker-machine docker-compose docker-swarm

別途、VirtualBoxはインストールしておく。VirtualBoxの入手はこちらから

その後、docker-machineでdockerサーバを立てる。

$ docker-machine create --driver virtualbox dev

VirtualBoxにdevという仮想マシンができる。

以後、以下のコマンドで起動、終了できる。

$ docker-machine start dev
$ docker-machine stop dev

dockerコマンドを、この仮想マシンに向けさせるには、以下のコマンドで表示されるコマンドをコピーして入力する。.bashrcに入れても良い。

$ docker-machine env dev
export DOCKER_TLS_VERIFY="1"
export DOCKER_HOST="tcp://192.168.99.101:2376"
export DOCKER_CERT_PATH="/Users/user/.docker/machines/dev"
export DOCKER_MACHINE_NAME="dev"
# Run this command to configure your shell:
# eval "$(docker-machine env dev)"

$ export DOCKER_TLS_VERIFY="1"
$ export DOCKER_HOST="tcp://192.168.99.101:2376"
$ export DOCKER_CERT_PATH="/Users/user/.docker/machines/dev"
$ export DOCKER_MACHINE_NAME="dev"

書いてあるとおり、evalを使って設定することもできる。

$ eval "$(docker-machine env dev)"

以下が実行できれば構築完了。

$ docker run hello-world

Linuxの場合

Debian、RedHad系を問わず、以下のインストールコマンドを利用する。

$ curl -sSL https://get.docker.com/ | sudo sh

サービスの起動、終了は以下のコマンドを入力する。

$ sudo systemctl start docker
$ sudo systemctl stop docker

以下が実行できれば構築完了。

$ sudo docker run hello-world

サービスを自動起動する場合は、以下のコマンドを利用する。

$ sudo systemctl enable docker

プロキシ内でのdockerの運用

Windowsの場合

インストールはdocker toolboxを使っておけばうまくいく。

docker-machine createの時に環境変数を追加することができる。プロキシ設定を追加する。

> docker-machine create -d virtualbox ^
    --engine-env HTTP_PROXY=http://your.proxy:8080 ^
    --engine-env HTTPS_PROXY=https://your.proxy:8080 ^
    dev

Macの場合

homebrewは環境変数HTTP_PROXY、HTTPS_PROXYに設定すれば動く。

$ export HTTP_PROXY=http://your.proxy:8080
$ export HTTPS_PROXY=https://your.proxy:8080
$ brew install docker docker-machine docker-compose docker-swarm

docker-machine createの時に環境変数を追加することができる。プロキシ設定を追加する。

$ docker-machine create -d virtualbox \
    --engine-env HTTP_PROXY=http://your.proxy:8080 \
    --engine-env HTTPS_PROXY=https://your.proxy:8080 \
    dev

dockerコマンド自体も、HTTP_PROXYが適用されるため、dockerコマンド利用時はHTTP_PROXY及び、HTTPS_PROXYの設定を削除するか、NO_PROXYに追加しておく必要がある。

HTTP_PROXY及び、HTTPS_PROXYの設定を削除する場合。

$ export HTTP_PROXY=
$ export HTTPS_PROXY=
$ eval "$(docker-machine env dev)"
$ docker run hello-world

NO_PROXYに追加する場合は、仮想マシンに割り当てられているIPアドレスを、docker-machine envで調べる。

$ docker-machine env dev
export DOCKER_TLS_VERIFY="1"
export DOCKER_HOST="tcp://192.168.99.101:2376"
export DOCKER_CERT_PATH="/Users/user/.docker/machines/dev"
export DOCKER_MACHINE_NAME="dev"
# Run this command to configure your shell:
# eval "$(docker-machine env dev)"

$ export NO_PROXY=192.168.99.101
$ docker run hello-world

Linuxの場合