Chef を使う¶
注釈
このインストール方法に関するドキュメントは、コミュニティによる貢献です。
インストール¶
Chef Supermarket 上の cookbook が利用可能です。そして、好みの cookbook 依存関係マネージャ(dependency manager)を使ってインストールできます。
ソースは GitHub 上にあります。
使い方¶
- 自分の cookbook の metadata.rb に
depends 'docker', '~> 2.0'
を追加します。 - cookbook のレシピに送信するリソースを指定します。同様にコア Chef リソースも使えます(file、template、directory、package 等)。
docker_service 'default' do
action [:create, :start]
end
docker_image 'busybox' do
action :pull
end
docker_container 'an echo server' do
repo 'busybox'
port '1234:1234'
command "nc -ll -p 1234 -e /bin/cat"
end
はじめましょう¶
こちらの例は、最新のイメージを取得し、コンテナ実行時にポートを公開します。
# Pull latest image
docker_image 'nginx' do
tag 'latest'
action :pull
end
# Run container exposing ports
docker_container 'my_nginx' do
repo 'nginx'
tag 'latest'
port '80:80'
binds [ '/some/local/files/:/etc/nginx/conf.d' ]
host_name 'www'
domain_name 'computers.biz'
env 'FOO=bar'
subscribes :redeploy, 'docker_image[nginx]'
end
参考
- Quickstart Docker Engine
- https://docs.docker.com/engine/quickstart/