Puppet を使う¶
注釈
このインストール方法は、コミュニティによる貢献です。 公式の
インストール方法は Ubuntu を使います。このバージョンは情報が古いかもしれません。
動作条件¶
このガイドを利用するには、 Puppet Labs が提供する Puppet をインストールする必要があります。
また、現時点の公式 パッケージとして利用できるモジュールは Ubuntu 向けのみです。
インストール¶
モジュールは Puppet Forge のものが使えます。内蔵モジュールのツールを使ってインストールします。
$ puppet module install garethr/docker
また、ソースをダウンロードするには、 GitHub <https://github.com/garethr/garethr-docker> も使えます。
使い方¶
モジュールは Docker をインストールする puppet クラスを提供し、イメージとコンテナを管理するために2つのタイプを定義します。
イメージ¶
次の手順でほとんどの Docker イメージをインストールします。この例では、次のように使用するタイプを定義しています。
docker::image { 'ubuntu': }
これは、次のコマンドと同等です。
$ docker pull ubuntu
docker::image { 'ubuntu':
ensure => 'absent',
}
コンテナ¶
これで、Docker によって管理されるコンテナ内で、コマンドを実行するイメージができます。
docker::run { 'helloworld':
image => 'ubuntu',
command => '/bin/sh -c "while true; do echo hello world; sleep 1; done"',
}
これは upstart 下での次のコマンドと同等です。
$ docker run -d ubuntu /bin/sh -c "while true; do echo hello world; sleep 1; done"
注釈
ports
、 env
、 dns
、 volumes
の属性を文字で指定するか、先ほどの配列の値で指定します。
参考
- Using Puppet
- https://docs.docker.com/engine/admin/puppet/