driver軽量・高速な docker を使用します。 Kitchen から docker を利用するには kitchen-docker のインストールが必要です。 コード ブロック |
---|
$ chef gem install kitchen-docker |
※ 今回の環境には既にインストールされています。 driver_configcentos をベース image とします。 利用できる image 名は Dockerfile の FROM 句で指定できるものと同じです。 詳細は Dockerfile のリファレンスを参照してください。 [ https://docs.docker.com/reference/builder/#from ] forward ではホストマシンにフォワーディングするポート番号を指定します。 今回は jenkins が使用する 8080 ポートに http://localhost:8080 でアクセスできるように指定しています。 詳細は kitchen-docker のドキュメントを参照してください。 [ https://github.com/portertech/kitchen-docker ] run_listプロビジョニング時に実行する Recipe を指定します。 Jenkins の動作には Java が必要なので、今回は Opscode Community の java Cookbook を使うことにします。 また、java Cookbook の動作には tar が必要なので、これも Opscode Community の tar Cookbook を使います。 自作した jenkins Cookbook も忘れずに指定しましょう。 ※ プロビジョニングに外部の Cookbook が必要な場合は後述する Berksfile の編集が必要です。 attributesプロビジョニング時に Recipe にわたす Attribute を指定します。 Attribute とは Recipe に対するパラメータのようなものです。 今回は Opscode コミュニティの java Cookbook の Attribute を指定しています。 詳細は java Cookbook の README.md を参照してください。 [ http://community.opscode.com/cookbooks/java ] |