はじめに
Docker Toolboxが公開されましたね!(参考)
Dockerいじる機会も増えたので,MacにInstallしてみてPackerでDockerImageを作ってみました.
目的
OSX上でChef Cookbookの内容のDocker ImageをPackerでビルドします.
環境
- OSX 10.10
- Docker Toolbox 1.8.1b
- Packer 0.8.6
作成方法
基本的に,公式のInstallation on Mac OS Xに従っています.
shell
$ docker-machine create --driver virtualbox default
Creating VirtualBox VM...
Creating SSH key...
Starting VirtualBox VM...
Starting VM...
To see how to connect Docker to this machine, run: docker-machine env default
$ docker-machine ls
NAME ACTIVE DRIVER STATE URL SWARM
default * virtualbox Running tcp://192.168.99.100:2376
$ docker-machine env default
export DOCKER_TLS_VERIFY="1"
export DOCKER_HOST="tcp://192.168.99.100:2376"
export DOCKER_CERT_PATH="/Users/kazutaka/.docker/machine/machines/default"
export DOCKER_MACHINE_NAME="default"
# Run this command to configure your shell:
# eval "$(docker-machine env default)"
$ eval "$(docker-machine env default)"
$ docker run hello-world
Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
以上で,dockerのインストールは完了です.
次にpackerを使ってdocker imageを作成します.OSX上では,Docker Clientがバグのためうまく連携できないとありますが,その解決方法がgithub issuesにあったため,それを利用すると無事連携することができました.
shell
$ make ~/tmp
$ export TMPDIR=~/tmp
$ packer build machine_chef.json
$ docker-machine ssh default
$ docker images
TMPDIRの場所を変える必要があるみたいですね!私の環境では,これで無事OSX上でdocker imageをつくるとができました!