diff --git a/infra-templates/bind9/0/docker-compose.yml b/infra-templates/bind9/0/docker-compose.yml new file mode 100644 index 0000000..2374e2a --- /dev/null +++ b/infra-templates/bind9/0/docker-compose.yml @@ -0,0 +1,11 @@ +bind9: + image: digitallumberjack/docker-bind9:v1.2.0 + ports: + - ${BIND9_PORT}:53/tcp + - ${BIND9_PORT}:53/udp + environment: + BIND9_ROOTDOMAIN: ${BIND9_ROOTDOMAIN} + BIND9_KEYNAME: ${BIND9_KEYNAME} + BIND9_KEY: ${BIND9_KEY} + BIND9_FORWARDERS: ${BIND9_FORWARDERS} + RANCHER_ENV: "true" diff --git a/infra-templates/bind9/0/rancher-compose.yml b/infra-templates/bind9/0/rancher-compose.yml new file mode 100644 index 0000000..f58eac4 --- /dev/null +++ b/infra-templates/bind9/0/rancher-compose.yml @@ -0,0 +1,44 @@ +.catalog: + name: "Bind9 DNS" + version: "v1.0.0-rancher1" + description: "Domain Name Server powered by Bind9" + minimum_rancher_version: v1.2.0-pre4-rc3 + questions: + - variable: "BIND9_ROOTDOMAIN" + label: "The root domain to manage in bind9" + description: "This root domain will be managed by the Bind9 server. Updates and axfr requests will be made on this domain" + type: "string" + required: true + - variable: "BIND9_KEYNAME" + label: "Bind9 TSIG Keyname" + description: "The TSIG keyname" + type: "string" + required: true + - variable: "BIND9_KEY" + label: "Bind9 TSIG Key (base64 encoded)" + description: "The TSIG key. Must be base64 encoded" + type: "string" + required: true + - variable: "BIND9_PORT" + label: "Bind9 port" + description: "Bind9 port to expose on host. Will be used to bind both TCP and UDP" + type: "string" + default: 53 + required: true + - variable: "BIND9_FORWARDERS" + label: "Bind9 dns forwarders" + description: "The DNS forwarders" + type: "string" + default: 8.8.8.8;8.8.4.4; + required: true + +bind9: + scale: 1 + health_check: + port: ${BIND9_PORT} + interval: 2000 + initializing_timeout: 20000 + unhealthy_threshold: 3 + strategy: recreate + healthy_threshold: 2 + response_timeout: 2000 diff --git a/infra-templates/bind9/catalogIcon-bind9.svg b/infra-templates/bind9/catalogIcon-bind9.svg new file mode 100644 index 0000000..562caa1 --- /dev/null +++ b/infra-templates/bind9/catalogIcon-bind9.svg @@ -0,0 +1,131 @@ + + + +image/svg+xml \ No newline at end of file diff --git a/infra-templates/bind9/config.yml b/infra-templates/bind9/config.yml new file mode 100644 index 0000000..01482f1 --- /dev/null +++ b/infra-templates/bind9/config.yml @@ -0,0 +1,5 @@ +name: Bind9 Domain Name Server +description: | + Bind9 DNS server, compatible with the "DNS Update (RFC2136)" +version: v1.0.0-rancher1 +category: External DNS diff --git a/infra-templates/cloudflare/0/docker-compose.yml b/infra-templates/cloudflare/0/docker-compose.yml new file mode 100644 index 0000000..77cf0d5 --- /dev/null +++ b/infra-templates/cloudflare/0/docker-compose.yml @@ -0,0 +1,13 @@ +cloudflare: + image: rancher/external-dns:v0.1.9 + command: -provider=cloudflare + expose: + - 1000 + environment: + CLOUDFLARE_EMAIL: ${CLOUDFLARE_EMAIL} + CLOUDFLARE_KEY: ${CLOUDFLARE_KEY} + ROOT_DOMAIN: ${ROOT_DOMAIN} + TTL: ${TTL} + labels: + io.rancher.container.create_agent: "true" + io.rancher.container.agent.role: "external-dns" diff --git a/infra-templates/cloudflare/0/rancher-compose.yml b/infra-templates/cloudflare/0/rancher-compose.yml new file mode 100644 index 0000000..2ab8f61 --- /dev/null +++ b/infra-templates/cloudflare/0/rancher-compose.yml @@ -0,0 +1,36 @@ +.catalog: + name: "CloudFlare DNS" + version: "v0.1.9-rancher1" + description: "Rancher External DNS service powered by CloudFlare. Requires Rancher version 0.44.0" + minimum_rancher_version: v1.2.0-pre4-rc3 + questions: + - variable: "CLOUDFLARE_EMAIL" + label: "CloudFlare email address" + description: "Email address associated with your CloudFlare account" + type: "string" + required: true + - variable: "CLOUDFLARE_KEY" + label: "CloudFlare API key" + description: "API key for your CloudFlare account" + type: "string" + required: true + - variable: "ROOT_DOMAIN" + label: "Domain" + description: "The DNS zone (domain) managed by CloudFlare. DNS entries will be created for ..." + type: "string" + required: true + - variable: "TTL" + label: "TTL" + description: "The resource record cache time to live (TTL), in seconds (minimum 120)" + type: "int" + default: 300 + required: false + +cloudflare: + health_check: + port: 1000 + interval: 2000 + unhealthy_threshold: 3 + request_line: GET / HTTP/1.0 + healthy_threshold: 2 + response_timeout: 2000 diff --git a/infra-templates/cloudflare/1/docker-compose.yml b/infra-templates/cloudflare/1/docker-compose.yml new file mode 100644 index 0000000..83a7097 --- /dev/null +++ b/infra-templates/cloudflare/1/docker-compose.yml @@ -0,0 +1,13 @@ +cloudflare: + image: rancher/external-dns:v0.2.1 + command: -provider=cloudflare + expose: + - 1000 + environment: + CLOUDFLARE_EMAIL: ${CLOUDFLARE_EMAIL} + CLOUDFLARE_KEY: ${CLOUDFLARE_KEY} + ROOT_DOMAIN: ${ROOT_DOMAIN} + TTL: ${TTL} + labels: + io.rancher.container.create_agent: "true" + io.rancher.container.agent.role: "external-dns" diff --git a/infra-templates/cloudflare/1/rancher-compose.yml b/infra-templates/cloudflare/1/rancher-compose.yml new file mode 100644 index 0000000..eedcbee --- /dev/null +++ b/infra-templates/cloudflare/1/rancher-compose.yml @@ -0,0 +1,36 @@ +.catalog: + name: "CloudFlare DNS" + version: "v0.2.1-rancher1" + description: "Rancher External DNS service powered by CloudFlare. Requires Rancher version 0.44.0" + minimum_rancher_version: v1.2.0-pre4-rc3 + questions: + - variable: "CLOUDFLARE_EMAIL" + label: "CloudFlare email address" + description: "Email address associated with your CloudFlare account" + type: "string" + required: true + - variable: "CLOUDFLARE_KEY" + label: "CloudFlare API key" + description: "API key for your CloudFlare account" + type: "string" + required: true + - variable: "ROOT_DOMAIN" + label: "Domain" + description: "The DNS zone (domain) managed by CloudFlare. DNS entries will be created for ..." + type: "string" + required: true + - variable: "TTL" + label: "TTL" + description: "The resource record cache time to live (TTL), in seconds (minimum 120)" + type: "int" + default: 300 + required: false + +cloudflare: + health_check: + port: 1000 + interval: 2000 + unhealthy_threshold: 3 + request_line: GET / HTTP/1.0 + healthy_threshold: 2 + response_timeout: 2000 diff --git a/infra-templates/cloudflare/2/docker-compose.yml b/infra-templates/cloudflare/2/docker-compose.yml new file mode 100644 index 0000000..459b8bc --- /dev/null +++ b/infra-templates/cloudflare/2/docker-compose.yml @@ -0,0 +1,13 @@ +cloudflare: + image: rancher/external-dns:v0.4.0 + command: -provider=cloudflare + expose: + - 1000 + environment: + CLOUDFLARE_EMAIL: ${CLOUDFLARE_EMAIL} + CLOUDFLARE_KEY: ${CLOUDFLARE_KEY} + ROOT_DOMAIN: ${ROOT_DOMAIN} + TTL: ${TTL} + labels: + io.rancher.container.create_agent: "true" + io.rancher.container.agent.role: "external-dns" diff --git a/infra-templates/cloudflare/2/rancher-compose.yml b/infra-templates/cloudflare/2/rancher-compose.yml new file mode 100644 index 0000000..ada5ab1 --- /dev/null +++ b/infra-templates/cloudflare/2/rancher-compose.yml @@ -0,0 +1,36 @@ +.catalog: + name: "CloudFlare DNS" + version: "v0.4.0-rancher1" + description: "Rancher External DNS service powered by CloudFlare. Requires Rancher version 0.44.0" + minimum_rancher_version: v1.2.0-pre4-rc3 + questions: + - variable: "CLOUDFLARE_EMAIL" + label: "CloudFlare email address" + description: "Email address associated with your CloudFlare account" + type: "string" + required: true + - variable: "CLOUDFLARE_KEY" + label: "CloudFlare API key" + description: "API key for your CloudFlare account" + type: "string" + required: true + - variable: "ROOT_DOMAIN" + label: "Domain" + description: "The DNS zone (domain) managed by CloudFlare. DNS entries will be created for ..." + type: "string" + required: true + - variable: "TTL" + label: "TTL" + description: "The resource record cache time to live (TTL), in seconds (minimum 120)" + type: "int" + default: 300 + required: false + +cloudflare: + health_check: + port: 1000 + interval: 2000 + unhealthy_threshold: 3 + request_line: GET / HTTP/1.0 + healthy_threshold: 2 + response_timeout: 2000 diff --git a/infra-templates/cloudflare/3/README.md b/infra-templates/cloudflare/3/README.md new file mode 100644 index 0000000..84dba81 --- /dev/null +++ b/infra-templates/cloudflare/3/README.md @@ -0,0 +1,36 @@ +## CloudFlare DNS + +Rancher External DNS service powered by CloudFlare DNS + +#### Changelog + +##### v0.6.0 + +* Reduces the overall rate of API requests to the DNS provider +* Adds support for custom DNS naming convention +* Stack, service and environment names used in service DNS names are now sanitized to conform with RFC 1123. Characters other than `a-z`, `A-Z`, `0-9` or `dash` are replaced by dashes. +* For internal use the service creates TXT records to track the FQDNs it manages. These TXT records are named `external-dns-.` and should not be deleted. + +#### Usage + +##### Upgrade Notes +While upgrading from a version lower than v0.6.0 the TTL configuration value should not be changed. You may change it once the upgrade has been completed. + +##### Limitation when running the service on multiple Rancher servers + +When running multiple instances of the External DNS service configured to use the **same** domain name, then only one of them can run in the "Default" environment of a Rancher server instance. + +##### Custom DNS name template + +By default DNS entries are named `...`. +You can specify a custom name template used to construct the subdomain part (left of the domain name) of the DNS records. The following placeholders are supported: + +* `%{{service_name}}` +* `%{{stack_name}}` +* `%{{environment_name}}` + +**Example:** + +`%{{stack_name}}-%{{service_name}}.statictext` + +Make sure to only use characters in static text and separators that are allowed by your provider in DNS names. diff --git a/infra-templates/cloudflare/3/docker-compose.yml b/infra-templates/cloudflare/3/docker-compose.yml new file mode 100644 index 0000000..0632413 --- /dev/null +++ b/infra-templates/cloudflare/3/docker-compose.yml @@ -0,0 +1,14 @@ +cloudflare: + image: rancher/external-dns:v0.6.0 + command: -provider=cloudflare + expose: + - 1000 + environment: + CLOUDFLARE_EMAIL: ${CLOUDFLARE_EMAIL} + CLOUDFLARE_KEY: ${CLOUDFLARE_KEY} + ROOT_DOMAIN: ${ROOT_DOMAIN} + NAME_TEMPLATE: ${NAME_TEMPLATE} + TTL: ${TTL} + labels: + io.rancher.container.create_agent: "true" + io.rancher.container.agent.role: "external-dns" diff --git a/infra-templates/cloudflare/3/rancher-compose.yml b/infra-templates/cloudflare/3/rancher-compose.yml new file mode 100644 index 0000000..e2f7eca --- /dev/null +++ b/infra-templates/cloudflare/3/rancher-compose.yml @@ -0,0 +1,47 @@ +.catalog: + name: "CloudFlare DNS" + version: "v0.6.0-rancher1" + description: "Rancher External DNS service powered by CloudFlare. Requires Rancher version v1.1.0" + minimum_rancher_version: v1.2.0-pre4-rc3 + questions: + - variable: "CLOUDFLARE_EMAIL" + label: "CloudFlare email address" + description: "Email address associated with your CloudFlare account" + type: "string" + required: true + - variable: "CLOUDFLARE_KEY" + label: "CloudFlare API key" + description: "API key for your CloudFlare account" + type: "string" + required: true + - variable: "ROOT_DOMAIN" + label: "Domain Name" + description: "The domain name managed by CloudFlare." + type: "string" + required: true + - variable: "TTL" + label: "TTL" + description: "The resource record cache time to live (TTL), in seconds (minimum 120)" + type: "int" + default: 120 + min: 120 + max: 3600 + required: false + - variable: "NAME_TEMPLATE" + label: "DNS Name Template" + description: | + Name template used to construct the subdomain part (left of the domain) of the DNS record names. + Supported placeholders: %{{service_name}}, %{{stack_name}}, %{{environment_name}}. + By default DNS entries will be named '...'. + type: "string" + default: "%{{service_name}}.%{{stack_name}}.%{{environment_name}}" + required: false + +cloudflare: + health_check: + port: 1000 + interval: 5000 + unhealthy_threshold: 3 + request_line: GET / HTTP/1.0 + healthy_threshold: 2 + response_timeout: 2000 diff --git a/infra-templates/cloudflare/catalogIcon-cloudflare.svg b/infra-templates/cloudflare/catalogIcon-cloudflare.svg new file mode 100644 index 0000000..92c9c65 --- /dev/null +++ b/infra-templates/cloudflare/catalogIcon-cloudflare.svg @@ -0,0 +1,129 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/infra-templates/cloudflare/config.yml b/infra-templates/cloudflare/config.yml new file mode 100644 index 0000000..6d09ec2 --- /dev/null +++ b/infra-templates/cloudflare/config.yml @@ -0,0 +1,5 @@ +name: CloudFlare DNS +description: | + Rancher External DNS service powered by CloudFlare +version: v0.6.0-rancher1 +category: External DNS diff --git a/infra-templates/dnsimple/0/docker-compose.yml b/infra-templates/dnsimple/0/docker-compose.yml new file mode 100644 index 0000000..a885a3f --- /dev/null +++ b/infra-templates/dnsimple/0/docker-compose.yml @@ -0,0 +1,13 @@ +dnsimple: + image: rancher/external-dns:v0.1.9 + command: --provider dnsimple + expose: + - 1000 + environment: + DNSIMPLE_TOKEN: ${DNSIMPLE_TOKEN} + DNSIMPLE_EMAIL: ${DNSIMPLE_EMAIL} + ROOT_DOMAIN: ${ROOT_DOMAIN} + TTL: ${TTL} + labels: + io.rancher.container.create_agent: "true" + io.rancher.container.agent.role: "external-dns" diff --git a/infra-templates/dnsimple/0/rancher-compose.yml b/infra-templates/dnsimple/0/rancher-compose.yml new file mode 100644 index 0000000..867f420 --- /dev/null +++ b/infra-templates/dnsimple/0/rancher-compose.yml @@ -0,0 +1,36 @@ +.catalog: + name: "DNSimple DNS" + version: "v0.1.9-rancher1" + description: "Rancher External DNS service powered by DNSimple. Requires Rancher version 0.44.0" + minimum_rancher_version: v1.2.0-pre4-rc3 + questions: + - variable: "DNSIMPLE_EMAIL" + label: "DNSimple account email address" + description: "EMail address associated with your DNSimple account" + type: "string" + required: true + - variable: "DNSIMPLE_TOKEN" + label: "DNSimple API token" + description: "API token for your DNSimple account" + type: "string" + required: true + - variable: "ROOT_DOMAIN" + label: "Root domain" + description: "DNS entries will be created for ..." + type: "string" + required: true + - variable: "TTL" + label: "TTL" + description: "The resource record cache time to live (TTL), in seconds" + type: "int" + default: 300 + required: false + +dnsimple: + health_check: + port: 1000 + interval: 2000 + unhealthy_threshold: 3 + request_line: GET / HTTP/1.0 + healthy_threshold: 2 + response_timeout: 2000 diff --git a/infra-templates/dnsimple/1/docker-compose.yml b/infra-templates/dnsimple/1/docker-compose.yml new file mode 100644 index 0000000..5561686 --- /dev/null +++ b/infra-templates/dnsimple/1/docker-compose.yml @@ -0,0 +1,13 @@ +dnsimple: + image: rancher/external-dns:v0.2.1 + command: --provider dnsimple + expose: + - 1000 + environment: + DNSIMPLE_TOKEN: ${DNSIMPLE_TOKEN} + DNSIMPLE_EMAIL: ${DNSIMPLE_EMAIL} + ROOT_DOMAIN: ${ROOT_DOMAIN} + TTL: ${TTL} + labels: + io.rancher.container.create_agent: "true" + io.rancher.container.agent.role: "external-dns" diff --git a/infra-templates/dnsimple/1/rancher-compose.yml b/infra-templates/dnsimple/1/rancher-compose.yml new file mode 100644 index 0000000..cd74dcf --- /dev/null +++ b/infra-templates/dnsimple/1/rancher-compose.yml @@ -0,0 +1,36 @@ +.catalog: + name: "DNSimple DNS" + version: "v0.2.1-rancher1" + description: "Rancher External DNS service powered by DNSimple. Requires Rancher version 0.44.0" + minimum_rancher_version: v1.2.0-pre4-rc3 + questions: + - variable: "DNSIMPLE_EMAIL" + label: "DNSimple account email address" + description: "EMail address associated with your DNSimple account" + type: "string" + required: true + - variable: "DNSIMPLE_TOKEN" + label: "DNSimple API token" + description: "API token for your DNSimple account" + type: "string" + required: true + - variable: "ROOT_DOMAIN" + label: "Root domain" + description: "DNS entries will be created for ..." + type: "string" + required: true + - variable: "TTL" + label: "TTL" + description: "The resource record cache time to live (TTL), in seconds" + type: "int" + default: 300 + required: false + +dnsimple: + health_check: + port: 1000 + interval: 2000 + unhealthy_threshold: 3 + request_line: GET / HTTP/1.0 + healthy_threshold: 2 + response_timeout: 2000 diff --git a/infra-templates/dnsimple/2/README.md b/infra-templates/dnsimple/2/README.md new file mode 100644 index 0000000..97b1559 --- /dev/null +++ b/infra-templates/dnsimple/2/README.md @@ -0,0 +1,36 @@ +## DNSimple DNS + +Rancher External DNS service powered by DNSimple DNS + +#### Changelog + +##### v0.6.0 + +* Reduces the overall rate of API requests to the DNS provider +* Adds support for custom DNS naming convention +* Stack, service and environment names used in service DNS names are now sanitized to conform with RFC 1123. Characters other than `a-z`, `A-Z`, `0-9` or `dash` are replaced by dashes. +* For internal use the service creates TXT records to track the FQDNs it manages. These TXT records are named `external-dns-.` and should not be deleted. + +#### Usage + +##### Upgrade Notes +While upgrading from a version lower than v0.6.0 the TTL configuration value should not be changed. You may change it once the upgrade has been completed. + +##### Limitation when running the service on multiple Rancher servers + +When running multiple instances of the External DNS service configured to use the **same** domain name, then only one of them can run in the "Default" environment of a Rancher server instance. + +##### Custom DNS name template + +By default DNS entries are named `...`. +You can specify a custom name template used to construct the subdomain part (left of the domain/zone name) of the DNS records. The following placeholders are supported: + +* `%{{service_name}}` +* `%{{stack_name}}` +* `%{{environment_name}}` + +**Example:** + +`%{{stack_name}}-%{{service_name}}.statictext` + +Make sure to only use characters in static text and separators that your provider allows in DNS names. diff --git a/infra-templates/dnsimple/2/docker-compose.yml b/infra-templates/dnsimple/2/docker-compose.yml new file mode 100644 index 0000000..1b0f3b3 --- /dev/null +++ b/infra-templates/dnsimple/2/docker-compose.yml @@ -0,0 +1,14 @@ +dnsimple: + image: rancher/external-dns:v0.6.0 + command: -provider=dnsimple + expose: + - 1000 + environment: + DNSIMPLE_TOKEN: ${DNSIMPLE_TOKEN} + DNSIMPLE_EMAIL: ${DNSIMPLE_EMAIL} + ROOT_DOMAIN: ${ROOT_DOMAIN} + NAME_TEMPLATE: ${NAME_TEMPLATE} + TTL: ${TTL} + labels: + io.rancher.container.create_agent: "true" + io.rancher.container.agent.role: "external-dns" diff --git a/infra-templates/dnsimple/2/rancher-compose.yml b/infra-templates/dnsimple/2/rancher-compose.yml new file mode 100644 index 0000000..87f0ceb --- /dev/null +++ b/infra-templates/dnsimple/2/rancher-compose.yml @@ -0,0 +1,45 @@ +.catalog: + name: "DNSimple DNS" + version: "v0.6.0-rancher1" + description: "Rancher External DNS service powered by DNSimple. Requires Rancher version v1.1.0" + minimum_rancher_version: v1.2.0-pre4-rc3 + questions: + - variable: "DNSIMPLE_EMAIL" + label: "DNSimple Account Email Address" + description: "Email address associated with your DNSimple account" + type: "string" + required: true + - variable: "DNSIMPLE_TOKEN" + label: "DNSimple API Token" + description: "API token for your DNSimple account" + type: "string" + required: true + - variable: "ROOT_DOMAIN" + label: "Root Domain" + description: "The domain name managed by DNSimple." + type: "string" + required: true + - variable: "TTL" + label: "TTL" + description: "The resource record cache time to live (TTL), in seconds" + type: "int" + default: 60 + required: false + - variable: "NAME_TEMPLATE" + label: "DNS Name Template" + description: | + Name template used to construct the subdomain part (left of the root domain name) of the DNS record names. + Supported placeholders: %{{service_name}}, %{{stack_name}}, %{{environment_name}}. + By default DNS entries will be named '...'. + type: "string" + default: "%{{service_name}}.%{{stack_name}}.%{{environment_name}}" + required: false + +dnsimple: + health_check: + port: 1000 + interval: 15000 + unhealthy_threshold: 2 + request_line: GET / HTTP/1.0 + healthy_threshold: 2 + response_timeout: 2000 diff --git a/infra-templates/dnsimple/catalogIcon-dnsimple.svg b/infra-templates/dnsimple/catalogIcon-dnsimple.svg new file mode 100644 index 0000000..521897b --- /dev/null +++ b/infra-templates/dnsimple/catalogIcon-dnsimple.svg @@ -0,0 +1,105 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/infra-templates/dnsimple/config.yml b/infra-templates/dnsimple/config.yml new file mode 100644 index 0000000..6cb7c36 --- /dev/null +++ b/infra-templates/dnsimple/config.yml @@ -0,0 +1,5 @@ +name: DNSimple DNS +description: | + Rancher External DNS service powered by DNSimple +version: v0.6.0-rancher1 +category: External DNS diff --git a/infra-templates/dnsupdate-rfc2136/0/docker-compose.yml b/infra-templates/dnsupdate-rfc2136/0/docker-compose.yml new file mode 100644 index 0000000..17fdf24 --- /dev/null +++ b/infra-templates/dnsupdate-rfc2136/0/docker-compose.yml @@ -0,0 +1,17 @@ +rfc2136dns: + image: rancher/external-dns:v0.5.0 + expose: + - 1000 + command: + - -provider + - rfc2136 + environment: + RFC2136_HOST: ${RFC2136_HOST} + RFC2136_PORT: ${RFC2136_PORT} + RFC2136_TSIG_KEYNAME: ${RFC2136_TSIG_KEYNAME} + RFC2136_TSIG_SECRET: ${RFC2136_TSIG_SECRET} + ROOT_DOMAIN: ${ROOT_DOMAIN} + TTL: ${TTL} + labels: + io.rancher.container.create_agent: "true" + io.rancher.container.agent.role: "external-dns" diff --git a/infra-templates/dnsupdate-rfc2136/0/rancher-compose.yml b/infra-templates/dnsupdate-rfc2136/0/rancher-compose.yml new file mode 100644 index 0000000..62b75cc --- /dev/null +++ b/infra-templates/dnsupdate-rfc2136/0/rancher-compose.yml @@ -0,0 +1,47 @@ +.catalog: + name: "DNS Update (RFC2136)" + version: "v0.5.0-rancher1" + description: "Rancher External DNS service powered by any RFC2136 compatible DNS" + minimum_rancher_version: v1.2.0-pre4-rc3 + questions: + - variable: "RFC2136_HOST" + label: "Domain Name Server IP" + description: "Server IP or Hostname" + type: "string" + required: true + - variable: "RFC2136_PORT" + label: "Domain Name Server Port" + description: "Server port" + type: "string" + required: true + default: "53" + - variable: "RFC2136_TSIG_KEYNAME" + label: "TSIG Key Name" + description: "Name of the key used for TSIG" + type: "string" + required: true + - variable: "RFC2136_TSIG_SECRET" + label: "TSIG Key" + description: "Value of the key used for TSIG, base64 encoded" + type: "string" + required: true + - variable: "TTL" + label: "TTL" + description: "The resource record cache time to live (TTL), in seconds" + type: "int" + default: 299 + required: false + - variable: "ROOT_DOMAIN" + label: "Hosted zone name" + description: "DNS hosted zone name (zone has to be pre-created). DNS entries will be created for ..." + type: "string" + required: true + +rfc2136dns: + health_check: + port: 1000 + interval: 2000 + unhealthy_threshold: 3 + request_line: GET / HTTP/1.0 + healthy_threshold: 2 + response_timeout: 2000 diff --git a/infra-templates/dnsupdate-rfc2136/1/README.md b/infra-templates/dnsupdate-rfc2136/1/README.md new file mode 100644 index 0000000..2d51922 --- /dev/null +++ b/infra-templates/dnsupdate-rfc2136/1/README.md @@ -0,0 +1,36 @@ +## DNS Update (RFC2136) + +Rancher External DNS service powered by any RFC2136 compatible DNS server + +#### Changelog + +##### v0.6.0 + +* Reduces the overall rate of API requests to the DNS provider +* Adds support for custom DNS naming convention +* Stack, service and environment names used in service DNS names are now sanitized to conform with RFC 1123. Characters other than `a-z`, `A-Z`, `0-9` or `dash` are replaced by dashes. +* For internal use the service creates TXT records to track the FQDNs it manages. These TXT records are named `external-dns-.` and should not be deleted. + +#### Usage + +##### Upgrade Notes +While upgrading from a version lower than v0.6.0 the TTL configuration value should not be changed. You may change it once the upgrade has been completed. + +##### Limitation when running the service on multiple Rancher servers + +When running multiple instances of the External DNS service configured to use the same domain name, then only one of them can run in the "Default" environment of a Rancher server instance. + +##### Custom DNS name template + +By default DNS entries are named `...`. +You can specify a custom name template used to construct the subdomain part (left of the domain/zone name) of the DNS records. The following placeholders are supported: + +* `%{{service_name}}` +* `%{{stack_name}}` +* `%{{environment_name}}` + +**Example:** + +`%{{stack_name}}-%{{service_name}}.statictext` + +Make sure to only use characters in static text and separators that the DNS server allows in DNS names. diff --git a/infra-templates/dnsupdate-rfc2136/1/docker-compose.yml b/infra-templates/dnsupdate-rfc2136/1/docker-compose.yml new file mode 100644 index 0000000..061fcdb --- /dev/null +++ b/infra-templates/dnsupdate-rfc2136/1/docker-compose.yml @@ -0,0 +1,16 @@ +rfc2136dns: + image: rancher/external-dns:v0.6.0 + command: -provider=rfc2136 + expose: + - 1000 + environment: + RFC2136_HOST: ${RFC2136_HOST} + RFC2136_PORT: ${RFC2136_PORT} + RFC2136_TSIG_KEYNAME: ${RFC2136_TSIG_KEYNAME} + RFC2136_TSIG_SECRET: ${RFC2136_TSIG_SECRET} + ROOT_DOMAIN: ${ROOT_DOMAIN} + NAME_TEMPLATE: ${NAME_TEMPLATE} + TTL: ${TTL} + labels: + io.rancher.container.create_agent: "true" + io.rancher.container.agent.role: "external-dns" diff --git a/infra-templates/dnsupdate-rfc2136/1/rancher-compose.yml b/infra-templates/dnsupdate-rfc2136/1/rancher-compose.yml new file mode 100644 index 0000000..985dd03 --- /dev/null +++ b/infra-templates/dnsupdate-rfc2136/1/rancher-compose.yml @@ -0,0 +1,56 @@ +.catalog: + name: "DNS Update (RFC2136)" + version: "v0.6.0-rancher1" + description: "Rancher External DNS service powered by any RFC2136 compatible DNS server. Requires Rancher version v1.1.0" + minimum_rancher_version: v1.2.0-pre4-rc3 + questions: + - variable: "RFC2136_HOST" + label: "DNS Server IP" + description: "Server IP or Hostname" + type: "string" + required: true + - variable: "RFC2136_PORT" + label: "DNS Server Port" + description: "Server port" + type: "string" + required: true + default: "53" + - variable: "RFC2136_TSIG_KEYNAME" + label: "TSIG Key Name" + description: "Name of the TSIG key" + type: "string" + required: true + - variable: "RFC2136_TSIG_SECRET" + label: "TSIG Key" + description: "TSIG secret key (HMAC-MD5, base64 encoded)" + type: "string" + required: true + - variable: "TTL" + label: "TTL" + description: "The resource record cache time to live (TTL), in seconds" + type: "int" + default: 60 + required: false + - variable: "ROOT_DOMAIN" + label: "Zone name" + description: "The name of an existing zone in which to create the records." + type: "string" + required: true + - variable: "NAME_TEMPLATE" + label: "DNS Name Template" + description: | + Name template used to construct the subdomain part (left of the zone/domain name) of the DNS record names. + Supported placeholders: %{{service_name}}, %{{stack_name}}, %{{environment_name}}. + By default DNS entries will be named '...'. + type: "string" + default: "%{{service_name}}.%{{stack_name}}.%{{environment_name}}" + required: false + +rfc2136dns: + health_check: + port: 1000 + interval: 5000 + unhealthy_threshold: 3 + request_line: GET / HTTP/1.0 + healthy_threshold: 2 + response_timeout: 2000 diff --git a/infra-templates/dnsupdate-rfc2136/catalogIcon-dnsupdate-rfc2136.svg b/infra-templates/dnsupdate-rfc2136/catalogIcon-dnsupdate-rfc2136.svg new file mode 100644 index 0000000..7a3169d --- /dev/null +++ b/infra-templates/dnsupdate-rfc2136/catalogIcon-dnsupdate-rfc2136.svg @@ -0,0 +1,139 @@ + + + +image/svg+xml \ No newline at end of file diff --git a/infra-templates/dnsupdate-rfc2136/config.yml b/infra-templates/dnsupdate-rfc2136/config.yml new file mode 100644 index 0000000..b28aea1 --- /dev/null +++ b/infra-templates/dnsupdate-rfc2136/config.yml @@ -0,0 +1,5 @@ +name: DNS Update (RFC2136) +description: | + Rancher External DNS service powered by any RFC2136 compatible DNS +version: v0.6.0-rancher1 +category: External DNS diff --git a/infra-templates/pointhq/0/docker-compose.yml b/infra-templates/pointhq/0/docker-compose.yml new file mode 100644 index 0000000..cde797b --- /dev/null +++ b/infra-templates/pointhq/0/docker-compose.yml @@ -0,0 +1,13 @@ +pointhq: + image: rancher/external-dns:v0.2.0 + command: --provider pointhq + expose: + - 1000 + environment: + POINTHQ_TOKEN: ${POINTHQ_TOKEN} + POINTHQ_EMAIL: ${POINTHQ_EMAIL} + ROOT_DOMAIN: ${ROOT_DOMAIN} + TTL: ${TTL} + labels: + io.rancher.container.create_agent: "true" + io.rancher.container.agent.role: "external-dns" diff --git a/infra-templates/pointhq/0/rancher-compose.yml b/infra-templates/pointhq/0/rancher-compose.yml new file mode 100644 index 0000000..09e00cf --- /dev/null +++ b/infra-templates/pointhq/0/rancher-compose.yml @@ -0,0 +1,36 @@ +.catalog: + name: "PointHQ DNS" + version: "v0.2.0-rancher1" + description: "Rancher External DNS service powered by PointHQ. Requires Rancher version 0.44.0" + minimum_rancher_version: v1.2.0-pre4-rc3 + questions: + - variable: "POINTHQ_EMAIL" + label: "PointHQ account email address" + description: "EMail address associated with your PointHQ account" + type: "string" + required: true + - variable: "POINTHQ_TOKEN" + label: "PointHQ API token" + description: "API token for your PointHQ account" + type: "string" + required: true + - variable: "ROOT_DOMAIN" + label: "Root domain" + description: "DNS entries will be created for ..." + type: "string" + required: true + - variable: "TTL" + label: "TTL" + description: "The resource record cache time to live (TTL), in seconds" + type: "int" + default: 300 + required: false + +pointhq: + health_check: + port: 1000 + interval: 2000 + unhealthy_threshold: 3 + request_line: GET / HTTP/1.0 + healthy_threshold: 2 + response_timeout: 2000 diff --git a/infra-templates/pointhq/1/docker-compose.yml b/infra-templates/pointhq/1/docker-compose.yml new file mode 100644 index 0000000..f68c854 --- /dev/null +++ b/infra-templates/pointhq/1/docker-compose.yml @@ -0,0 +1,13 @@ +pointhq: + image: rancher/external-dns:v0.2.1 + command: --provider pointhq + expose: + - 1000 + environment: + POINTHQ_TOKEN: ${POINTHQ_TOKEN} + POINTHQ_EMAIL: ${POINTHQ_EMAIL} + ROOT_DOMAIN: ${ROOT_DOMAIN} + TTL: ${TTL} + labels: + io.rancher.container.create_agent: "true" + io.rancher.container.agent.role: "external-dns" diff --git a/infra-templates/pointhq/1/rancher-compose.yml b/infra-templates/pointhq/1/rancher-compose.yml new file mode 100644 index 0000000..e5bb06c --- /dev/null +++ b/infra-templates/pointhq/1/rancher-compose.yml @@ -0,0 +1,36 @@ +.catalog: + name: "PointHQ DNS" + version: "v0.2.1-rancher1" + description: "Rancher External DNS service powered by PointHQ. Requires Rancher version 0.44.0" + minimum_rancher_version: v1.2.0-pre4-rc3 + questions: + - variable: "POINTHQ_EMAIL" + label: "PointHQ account email address" + description: "EMail address associated with your PointHQ account" + type: "string" + required: true + - variable: "POINTHQ_TOKEN" + label: "PointHQ API token" + description: "API token for your PointHQ account" + type: "string" + required: true + - variable: "ROOT_DOMAIN" + label: "Root domain" + description: "DNS entries will be created for ..." + type: "string" + required: true + - variable: "TTL" + label: "TTL" + description: "The resource record cache time to live (TTL), in seconds" + type: "int" + default: 300 + required: false + +pointhq: + health_check: + port: 1000 + interval: 2000 + unhealthy_threshold: 3 + request_line: GET / HTTP/1.0 + healthy_threshold: 2 + response_timeout: 2000 diff --git a/infra-templates/pointhq/catalogIcon-pointhq.svg b/infra-templates/pointhq/catalogIcon-pointhq.svg new file mode 100644 index 0000000..349c3d1 --- /dev/null +++ b/infra-templates/pointhq/catalogIcon-pointhq.svg @@ -0,0 +1,41 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/infra-templates/pointhq/config.yml b/infra-templates/pointhq/config.yml new file mode 100644 index 0000000..289a4a6 --- /dev/null +++ b/infra-templates/pointhq/config.yml @@ -0,0 +1,5 @@ +name: PointHQ DNS +description: | + Rancher External DNS service powered by PointHQ +version: v0.2.1-rancher1 +category: External DNS diff --git a/infra-templates/powerdns-external-dns/0/docker-compose.yml b/infra-templates/powerdns-external-dns/0/docker-compose.yml new file mode 100644 index 0000000..0ad44c9 --- /dev/null +++ b/infra-templates/powerdns-external-dns/0/docker-compose.yml @@ -0,0 +1,14 @@ +powerdns: + image: rancher/external-dns:v0.5.0 + command: "-provider=powerdns" + expose: + - 1000 + environment: + POWERDNS_API_KEY: ${POWERDNS_API_KEY} + POWERDNS_URL: ${POWERDNS_URL} + ROOT_DOMAIN: ${ROOT_DOMAIN} + TTL: ${TTL} + labels: + io.rancher.container.pull_image: always + io.rancher.container.create_agent: "true" + io.rancher.container.agent.role: "external-dns" diff --git a/infra-templates/powerdns-external-dns/0/rancher-compose.yml b/infra-templates/powerdns-external-dns/0/rancher-compose.yml new file mode 100644 index 0000000..01cf247 --- /dev/null +++ b/infra-templates/powerdns-external-dns/0/rancher-compose.yml @@ -0,0 +1,38 @@ +.catalog: + name: "PowerDNS External" + version: "v0.5.0-rancher1" + description: Rancher External DNS service for PowerDNS. + minimum_rancher_version: v1.2.0-pre4-rc3 + uuid: powerdns-external-dns:v0.5.0-rancher1 + questions: + - variable: POWERDNS_URL + label: PowerDNS URL + type: string + description: http[s] base url to PowerDNS + required: true + default: http://powerdns:8100 + - variable: POWERDNS_API_KEY + label: PowerDNS API Key + type: password + description: API Key for PowerDNS + required: true + - variable: TTL + label: TTL + description: "The resource record cache time to live (TTL), in seconds" + type: int + default: 299 + required: false + - variable: "ROOT_DOMAIN" + label: "Hosted zone name" + description: "Hosted zone name (zone has to be pre-created). DNS entries will be created for ..." + type: "string" + required: true + +powerdns: + health_check: + port: 1000 + interval: 30000 + unhealthy_threshold: 3 + request_line: GET / HTTP/1.0 + healthy_threshold: 2 + response_timeout: 2000 diff --git a/infra-templates/powerdns-external-dns/catalogIcon-powerdns.svg b/infra-templates/powerdns-external-dns/catalogIcon-powerdns.svg new file mode 100644 index 0000000..9e2a930 --- /dev/null +++ b/infra-templates/powerdns-external-dns/catalogIcon-powerdns.svg @@ -0,0 +1,51 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/infra-templates/powerdns-external-dns/config.yml b/infra-templates/powerdns-external-dns/config.yml new file mode 100644 index 0000000..bdf5324 --- /dev/null +++ b/infra-templates/powerdns-external-dns/config.yml @@ -0,0 +1,5 @@ +name: PowerDNS External +description: | + Rancher External DNS service for PowerDNS +version: v0.5.0-rancher1 +category: External DNS diff --git a/templates/bind9/0/rancher-compose.yml b/templates/bind9/0/rancher-compose.yml index 1e40e98..d7e5774 100644 --- a/templates/bind9/0/rancher-compose.yml +++ b/templates/bind9/0/rancher-compose.yml @@ -3,6 +3,7 @@ version: "v1.0.0-rancher1" description: "Domain Name Server powered by Bind9" minimum_rancher_version: v0.44.0 + maximum_rancher_version: v1.1.99 questions: - variable: "BIND9_ROOTDOMAIN" label: "The root domain to manage in bind9" @@ -42,4 +43,3 @@ bind9: strategy: recreate healthy_threshold: 2 response_timeout: 2000 - diff --git a/templates/bind9/config.yml b/templates/bind9/config.yml index f6b1892..01482f1 100644 --- a/templates/bind9/config.yml +++ b/templates/bind9/config.yml @@ -2,4 +2,4 @@ name: Bind9 Domain Name Server description: | Bind9 DNS server, compatible with the "DNS Update (RFC2136)" version: v1.0.0-rancher1 -category: Rancher Services +category: External DNS diff --git a/templates/cloudflare/0/rancher-compose.yml b/templates/cloudflare/0/rancher-compose.yml index 3c30fd0..c213a5b 100644 --- a/templates/cloudflare/0/rancher-compose.yml +++ b/templates/cloudflare/0/rancher-compose.yml @@ -3,6 +3,7 @@ version: "v0.1.9-rancher1" description: "Rancher External DNS service powered by CloudFlare. Requires Rancher version 0.44.0" minimum_rancher_version: v0.44.0 + maximum_rancher_version: v1.1.99 questions: - variable: "CLOUDFLARE_EMAIL" label: "CloudFlare email address" diff --git a/templates/cloudflare/1/rancher-compose.yml b/templates/cloudflare/1/rancher-compose.yml index 454d833..3bad364 100644 --- a/templates/cloudflare/1/rancher-compose.yml +++ b/templates/cloudflare/1/rancher-compose.yml @@ -3,6 +3,7 @@ version: "v0.2.1-rancher1" description: "Rancher External DNS service powered by CloudFlare. Requires Rancher version 0.44.0" minimum_rancher_version: v0.44.0 + maximum_rancher_version: v1.1.99 questions: - variable: "CLOUDFLARE_EMAIL" label: "CloudFlare email address" diff --git a/templates/cloudflare/2/rancher-compose.yml b/templates/cloudflare/2/rancher-compose.yml index dd5bf67..114665b 100644 --- a/templates/cloudflare/2/rancher-compose.yml +++ b/templates/cloudflare/2/rancher-compose.yml @@ -3,6 +3,7 @@ version: "v0.4.0-rancher1" description: "Rancher External DNS service powered by CloudFlare. Requires Rancher version 0.44.0" minimum_rancher_version: v0.44.0 + maximum_rancher_version: v1.1.99 questions: - variable: "CLOUDFLARE_EMAIL" label: "CloudFlare email address" diff --git a/templates/cloudflare/3/rancher-compose.yml b/templates/cloudflare/3/rancher-compose.yml index f18c3be..7741335 100644 --- a/templates/cloudflare/3/rancher-compose.yml +++ b/templates/cloudflare/3/rancher-compose.yml @@ -3,6 +3,7 @@ version: "v0.6.0-rancher1" description: "Rancher External DNS service powered by CloudFlare. Requires Rancher version v1.1.0" minimum_rancher_version: v1.1.0 + maximum_rancher_version: v1.1.99 questions: - variable: "CLOUDFLARE_EMAIL" label: "CloudFlare email address" diff --git a/templates/cloudflare/config.yml b/templates/cloudflare/config.yml index 5e82c65..6d09ec2 100644 --- a/templates/cloudflare/config.yml +++ b/templates/cloudflare/config.yml @@ -2,4 +2,4 @@ name: CloudFlare DNS description: | Rancher External DNS service powered by CloudFlare version: v0.6.0-rancher1 -category: Rancher Services +category: External DNS diff --git a/templates/dnsimple/0/rancher-compose.yml b/templates/dnsimple/0/rancher-compose.yml index 1d50c03..e6d4f74 100644 --- a/templates/dnsimple/0/rancher-compose.yml +++ b/templates/dnsimple/0/rancher-compose.yml @@ -3,6 +3,7 @@ version: "v0.1.9-rancher1" description: "Rancher External DNS service powered by DNSimple. Requires Rancher version 0.44.0" minimum_rancher_version: v0.44.0 + maximum_rancher_version: v1.1.99 questions: - variable: "DNSIMPLE_EMAIL" label: "DNSimple account email address" diff --git a/templates/dnsimple/1/rancher-compose.yml b/templates/dnsimple/1/rancher-compose.yml index 191684b..9c81b55 100644 --- a/templates/dnsimple/1/rancher-compose.yml +++ b/templates/dnsimple/1/rancher-compose.yml @@ -3,6 +3,7 @@ version: "v0.2.1-rancher1" description: "Rancher External DNS service powered by DNSimple. Requires Rancher version 0.44.0" minimum_rancher_version: v0.44.0 + maximum_rancher_version: v1.1.99 questions: - variable: "DNSIMPLE_EMAIL" label: "DNSimple account email address" diff --git a/templates/dnsimple/2/rancher-compose.yml b/templates/dnsimple/2/rancher-compose.yml index ed02bfb..6d55ba5 100644 --- a/templates/dnsimple/2/rancher-compose.yml +++ b/templates/dnsimple/2/rancher-compose.yml @@ -3,6 +3,7 @@ version: "v0.6.0-rancher1" description: "Rancher External DNS service powered by DNSimple. Requires Rancher version v1.1.0" minimum_rancher_version: v1.1.0 + maximum_rancher_version: v1.1.99 questions: - variable: "DNSIMPLE_EMAIL" label: "DNSimple Account Email Address" diff --git a/templates/dnsimple/config.yml b/templates/dnsimple/config.yml index fcc1e6a..6cb7c36 100644 --- a/templates/dnsimple/config.yml +++ b/templates/dnsimple/config.yml @@ -2,4 +2,4 @@ name: DNSimple DNS description: | Rancher External DNS service powered by DNSimple version: v0.6.0-rancher1 -category: Rancher Services +category: External DNS diff --git a/templates/dnsupdate-rfc2136/0/rancher-compose.yml b/templates/dnsupdate-rfc2136/0/rancher-compose.yml index 3fbf4de..9ac038c 100644 --- a/templates/dnsupdate-rfc2136/0/rancher-compose.yml +++ b/templates/dnsupdate-rfc2136/0/rancher-compose.yml @@ -3,6 +3,7 @@ version: "v0.5.0-rancher1" description: "Rancher External DNS service powered by any RFC2136 compatible DNS" minimum_rancher_version: v1.1.0 + maximum_rancher_version: v1.1.99 questions: - variable: "RFC2136_HOST" label: "Domain Name Server IP" diff --git a/templates/dnsupdate-rfc2136/1/rancher-compose.yml b/templates/dnsupdate-rfc2136/1/rancher-compose.yml index c380cf3..40cf492 100644 --- a/templates/dnsupdate-rfc2136/1/rancher-compose.yml +++ b/templates/dnsupdate-rfc2136/1/rancher-compose.yml @@ -3,6 +3,7 @@ version: "v0.6.0-rancher1" description: "Rancher External DNS service powered by any RFC2136 compatible DNS server. Requires Rancher version v1.1.0" minimum_rancher_version: v1.1.0 + maximum_rancher_version: v1.1.99 questions: - variable: "RFC2136_HOST" label: "DNS Server IP" diff --git a/templates/dnsupdate-rfc2136/config.yml b/templates/dnsupdate-rfc2136/config.yml index da2b9a3..b28aea1 100644 --- a/templates/dnsupdate-rfc2136/config.yml +++ b/templates/dnsupdate-rfc2136/config.yml @@ -2,4 +2,4 @@ name: DNS Update (RFC2136) description: | Rancher External DNS service powered by any RFC2136 compatible DNS version: v0.6.0-rancher1 -category: Rancher Services +category: External DNS diff --git a/templates/pointhq/0/rancher-compose.yml b/templates/pointhq/0/rancher-compose.yml index 00aa285..5f7ef7c 100644 --- a/templates/pointhq/0/rancher-compose.yml +++ b/templates/pointhq/0/rancher-compose.yml @@ -3,6 +3,7 @@ version: "v0.2.0-rancher1" description: "Rancher External DNS service powered by PointHQ. Requires Rancher version 0.44.0" minimum_rancher_version: v0.44.0 + maximum_rancher_version: v1.1.99 questions: - variable: "POINTHQ_EMAIL" label: "PointHQ account email address" diff --git a/templates/pointhq/1/rancher-compose.yml b/templates/pointhq/1/rancher-compose.yml index e02c8bf..1c9359d 100644 --- a/templates/pointhq/1/rancher-compose.yml +++ b/templates/pointhq/1/rancher-compose.yml @@ -3,6 +3,7 @@ version: "v0.2.1-rancher1" description: "Rancher External DNS service powered by PointHQ. Requires Rancher version 0.44.0" minimum_rancher_version: v0.44.0 + maximum_rancher_version: v1.1.99 questions: - variable: "POINTHQ_EMAIL" label: "PointHQ account email address" diff --git a/templates/pointhq/config.yml b/templates/pointhq/config.yml index 9300ebf..289a4a6 100644 --- a/templates/pointhq/config.yml +++ b/templates/pointhq/config.yml @@ -2,4 +2,4 @@ name: PointHQ DNS description: | Rancher External DNS service powered by PointHQ version: v0.2.1-rancher1 -category: Rancher Services +category: External DNS diff --git a/templates/powerdns-external-dns/0/rancher-compose.yml b/templates/powerdns-external-dns/0/rancher-compose.yml index c99f4ca..2696cb0 100644 --- a/templates/powerdns-external-dns/0/rancher-compose.yml +++ b/templates/powerdns-external-dns/0/rancher-compose.yml @@ -3,6 +3,7 @@ version: "v0.5.0-rancher1" description: Rancher External DNS service for PowerDNS. minimum_rancher_version: v1.1.0 + maximum_rancher_version: v1.1.99 uuid: powerdns-external-dns:v0.5.0-rancher1 questions: - variable: POWERDNS_URL diff --git a/templates/powerdns-external-dns/config.yml b/templates/powerdns-external-dns/config.yml index 187cb2e..bdf5324 100644 --- a/templates/powerdns-external-dns/config.yml +++ b/templates/powerdns-external-dns/config.yml @@ -2,4 +2,4 @@ name: PowerDNS External description: | Rancher External DNS service for PowerDNS version: v0.5.0-rancher1 -category: Rancher Services +category: External DNS