OSDN Git Service

adds the `docker-grid::registry-server` and `docker-grid::registry-docker-compose...
[metasearch/grid-chef-repo.git] / cookbooks / docker-grid / README.md
index 7a02f50..f35bbf2 100644 (file)
@@ -1,7 +1,7 @@
 docker-grid Cookbook
 ====================
 
-This cookbook sets up Docker engine.
+This cookbook sets up Docker engine etc.
 
 ## Contents
 
@@ -15,6 +15,8 @@ This cookbook sets up Docker engine.
         - [docker-grid::compose](#docker-gridcompose)
         - [docker-grid::engine](#docker-gridengine)
         - [docker-grid::registry](#docker-gridregistry)
+        - [docker-grid::registry-docker-compose](#docker-gridregistry-docker-compose)
+        - [docker-grid::registry-server](#docker-gridregistry-server)
     - [Role Examples](#role-examples)
     - [SSL server keys and certificates management by `ssl_cert` cookbook](#ssl-server-keys-and-certificates-management-by-ssl_cert-cookbook)
 - [License and Authors](#license-and-authors)
@@ -62,6 +64,7 @@ This cookbook sets up Docker engine.
 |`['docker-grid']['engine']['users_allow']`|Array|Non-root users allowed to manage Docker daemon.|`[]`|
 |`['docker-grid']['registry']['with_ssl_cert_cookbook']`|Boolean|If this attribute is true, `node['docker-grid']['registry']['docker-compose']['config']` are are overridden by the following `common_name` attributes.|`false`|
 |`['docker-grid']['registry']['ssl_cert']['common_name']`|String|Registry server common name for TLS|`node['fqdn']`|
+|`['docker-grid']['registry']['server']['config']`|Hash|Registry server configurations.|See `attributes/default.rb`|
 |`['docker-grid']['registry']['docker-compose']['app_dir']`|String||`"#{node['docker-grid']['compose']['app_dir']}/registry"`|
 |`['docker-grid']['registry']['docker-compose']['host_data_volume']`|String|Data directory path on the host filesystem or `nil` (unset).|`'/var/lib/docker-registry'`|
 |`['docker-grid']['registry']['docker-compose']['config_format_version']`|String|`docker-compose.yml` format version. `'1'` or `'2'`|`'1'`|
@@ -89,6 +92,14 @@ This recipe sets up Docker engine.
 
 This recipe sets up Docker Compose configurations for the Docker registry service.
 
+#### docker-grid::registry-docker-compose
+
+This recipe is alias of the `docker-grid::registry` recipe.
+
+#### docker-grid::registry-server
+
+This recipe sets up a Docker registry service on real host.
+
 ### Role Examples
 
 - `roles/docker.rb`:  installs the `docker-engine` package.
@@ -170,7 +181,7 @@ override_attributes(
 )
 ```
 
-- `roles/docker-registry.rb`
+- `roles/docker-registry.rb`: on Docker.
 
 ```ruby
 name 'docker-registry'
@@ -228,20 +239,25 @@ override_attributes(
 )
 ```
 
-- `roles/docker-registry-with-ssl-cert.rb`
+- `roles/docker-registry-with-ssl-cert.rb`: on Docker.
 
 ```ruby
 name 'docker-registry-with-ssl-cert'
 description 'Docker Registry Server'
 
+registry_fqdn = 'registry.docker.example.com'
+
 run_list(
   #'recipe[ssl_cert::server_key_pairs]',  # docker-grid <= 0.3.9
   'recipe[docker-grid::registry]',
 )
 
-registry_fqdn = 'registry.docker.example.com'
-
 override_attributes(
+  'ssl_cert' => {
+    'common_names' => [
+      registry_fqdn,
+    ],
+  },
   'docker-grid' => {
     'engine' => {
       'version_on_centos' => '17.03.1.ce-1',
@@ -292,7 +308,7 @@ override_attributes(
 )
 ```
 
-- `roles/docker-registry-by-entire-config.rb`
+- `roles/docker-registry-by-entire-config.rb`: on Docker.
 
 ```ruby
 name 'docker-registry-by-entire-config'
@@ -353,6 +369,47 @@ override_attributes(
 )
 ```
 
+- `roles/registry-server-with-ssl-cert.rb`: on real host.
+
+```ruby
+name 'registry-server-with-ssl-cert'
+description 'Docker Registry Server'
+
+registry_fqdn = 'registry.docker.example.com'
+
+run_list(
+  'recipe[docker-grid::registry-server]',
+)
+
+override_attributes(
+  'ssl_cert' => {
+    'common_names' => [
+      registry_fqdn,
+    ],
+  },
+  'docker-grid' => {
+    'registry' => {
+      'with_ssl_cert_cookbook' => true,
+      'ssl_cert' => {
+        'common_name' => registry_fqdn,
+      },
+      'server' => {
+        'config' => {
+          'storage' => {
+            'filesystem' => {
+              'rootdirectory' => '/var/lib/docker-registry',
+            },
+          },
+          'proxy' => {
+            'remoteurl' => 'https://registry-1.docker.io',
+          },
+        },
+      },
+    },
+  },
+)
+```
+
 ### SSL server keys and certificates management by `ssl_cert` cookbook
 
 - create vault items.