1
0
Fork 0
mirror of https://github.com/moby/moby.git synced 2022-11-09 12:21:53 -05:00
moby--moby/docs/sources/articles/chef.md
Mary Anthony 29d01b7dde Removing sudo from command line examples
We now advise people to configure docker group and
add to sudo.  Mac shouldn't use sudo.  Removed sudo
from command examples.  Left in installation to be removed
in installation doc sweep -- removing requires finer
grain control.

Signed-off-by: Mary Anthony <mary@docker.com>
2015-03-26 11:12:37 -07:00

2 KiB

page_title: Chef Usage page_description: Installation and using Docker via Chef page_keywords: chef, installation, usage, docker, documentation

Using Chef

Note

: Please note this is a community contributed installation path. The only official installation is using the Ubuntu installation path. This version may sometimes be out of date.

Requirements

To use this guide you'll need a working installation of Chef. This cookbook supports a variety of operating systems.

Installation

The cookbook is available on the Chef Community Site and can be installed using your favorite cookbook dependency manager.

The source can be found on GitHub.

Usage

The cookbook provides recipes for installing Docker, configuring init for Docker, and resources for managing images and containers. It supports almost all Docker functionality.

Installation

include_recipe 'docker'

Images

The next step is to pull a Docker image. For this, we have a resource:

docker_image 'samalba/docker-registry'

This is equivalent to running:

$ docker pull samalba/docker-registry

There are attributes available to control how long the cookbook will allow for downloading (5 minute default).

To remove images you no longer need:

docker_image 'samalba/docker-registry' do
  action :remove
end

Containers

Now you have an image where you can run commands within a container managed by Docker.

docker_container 'samalba/docker-registry' do
  detach true
  port '5000:5000'
  env 'SETTINGS_FLAVOR=local'
  volume '/mnt/docker:/docker-storage'
end

This is equivalent to running the following command, but under upstart:

$ docker run --detach=true --publish='5000:5000' --env='SETTINGS_FLAVOR=local' --volume='/mnt/docker:/docker-storage' samalba/docker-registry

The resources will accept a single string or an array of values for any Docker flags that allow multiple values.