Moved external DNS to infra-templates, added min/max versions and updated category to External DNS
This commit is contained in:
parent
27f6f8bb8f
commit
440fac6202
11
infra-templates/bind9/0/docker-compose.yml
Normal file
11
infra-templates/bind9/0/docker-compose.yml
Normal file
@ -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"
|
44
infra-templates/bind9/0/rancher-compose.yml
Normal file
44
infra-templates/bind9/0/rancher-compose.yml
Normal file
@ -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
|
131
infra-templates/bind9/catalogIcon-bind9.svg
Normal file
131
infra-templates/bind9/catalogIcon-bind9.svg
Normal file
@ -0,0 +1,131 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
version="1.1"
|
||||
id="Calque_1"
|
||||
x="0px"
|
||||
y="0px"
|
||||
width="128"
|
||||
height="128"
|
||||
viewBox="0 0 127.99999 128"
|
||||
enable-background="new 0 0 595.28 841.89"
|
||||
xml:space="preserve"
|
||||
inkscape:version="0.91 r13725"
|
||||
sodipodi:docname="catalogIcon-dnsimple.svg"><metadata
|
||||
id="metadata51"><rdf:RDF><cc:Work
|
||||
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
|
||||
id="defs49" /><sodipodi:namedview
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1"
|
||||
objecttolerance="10"
|
||||
gridtolerance="10"
|
||||
guidetolerance="10"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="1451"
|
||||
inkscape:window-height="954"
|
||||
id="namedview47"
|
||||
showgrid="false"
|
||||
fit-margin-top="0"
|
||||
fit-margin-left="0"
|
||||
fit-margin-right="0"
|
||||
fit-margin-bottom="0"
|
||||
inkscape:zoom="12.68591"
|
||||
inkscape:cx="82.553879"
|
||||
inkscape:cy="38.60826"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="27"
|
||||
inkscape:window-maximized="0"
|
||||
inkscape:current-layer="text3354" /><circle
|
||||
cx="64"
|
||||
cy="64"
|
||||
r="64"
|
||||
id="circle3"
|
||||
style="fill:#7bb6dc" /><circle
|
||||
cx="64"
|
||||
cy="62"
|
||||
r="38"
|
||||
id="circle5"
|
||||
style="fill:#256f9a" /><path
|
||||
d="m 104.293,77 -1.817,0 C 104.105,72.641 105,67.926 105,63 105,40.908 87.09,23 65,23 42.908,23 25,40.908 25,63 c 0,16.786 10.343,31.147 25,37.081 l 0,4.189 c 0,0.955 0.765,1.73 1.707,1.73 l 52.586,0 c 0.942,0 1.707,-0.775 1.707,-1.73 l 0,-25.541 C 106,77.773 105.235,77 104.293,77 Z"
|
||||
id="path7"
|
||||
inkscape:connector-curvature="0"
|
||||
style="opacity:0.25;fill:#010202" /><path
|
||||
d="m 64,22 c -22.092,0 -40,17.908 -40,40 0,22.09 17.908,40 40,40 22.09,0 40,-17.91 40,-40 C 104,39.908 86.09,22 64,22 Z m 0,76 C 44.117,98 28,81.881 28,62 28,42.117 44.117,26 64,26 c 19.881,0 36,16.117 36,36 0,19.881 -16.119,36 -36,36 z"
|
||||
id="path9"
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:#ffffff" /><path
|
||||
stroke-miterlimit="10"
|
||||
d="m 32,45 c 6,-4 21.852,-4.389 33,-2 14,3 34,13 36,24"
|
||||
id="path11"
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:3;stroke-miterlimit:10" /><path
|
||||
stroke-miterlimit="10"
|
||||
d="M 92,85 C 85.242,87.518 64.815,82.799 55,77 33,64 24,48 24,42 c 0,-3 7,-2 7,-2"
|
||||
id="path13"
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:3;stroke-miterlimit:10" /><path
|
||||
stroke-miterlimit="10"
|
||||
d="M 97.597,46.563 C 97.758,52.065 88,76 79,85 71.272,92.727 64,98 61,99"
|
||||
id="path15"
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:3;stroke-miterlimit:10" /><path
|
||||
stroke-miterlimit="10"
|
||||
d="m 94,39 c 0,0 3.452,-6.534 0,-9 C 87,25 62,41 49.812,54.414 42.145,62.852 33,91.001 37,97.001 c 1.24,1.859 4,-2 4,-2"
|
||||
id="path17"
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:3;stroke-miterlimit:10" /><circle
|
||||
cx="62.5"
|
||||
cy="42.5"
|
||||
r="5.5"
|
||||
id="circle19"
|
||||
style="fill:#ffffff" /><circle
|
||||
cx="41.5"
|
||||
cy="68.5"
|
||||
r="5.5"
|
||||
id="circle21"
|
||||
style="fill:#ffffff" /><circle
|
||||
cx="93.5"
|
||||
cy="57.5"
|
||||
r="5.5"
|
||||
id="circle23"
|
||||
style="fill:#ffffff" /><g
|
||||
id="g25"
|
||||
transform="translate(-234.125,-356.875)"><path
|
||||
d="m 339.125,460.145 c 0,0.955 -0.765,1.73 -1.707,1.73 l -52.586,0 c -0.942,0 -1.707,-0.775 -1.707,-1.73 l 0,-25.541 c 0,-0.955 0.765,-1.729 1.707,-1.729 l 52.586,0 c 0.942,0 1.707,0.773 1.707,1.729 l 0,25.541 z"
|
||||
id="path27"
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:#ffffff" /><rect
|
||||
x="286.125"
|
||||
y="435.875"
|
||||
width="50"
|
||||
height="23"
|
||||
id="rect29"
|
||||
style="fill:#f6a356" /><g
|
||||
style="font-style:normal;font-weight:normal;font-size:40px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
id="text3354"><path
|
||||
d="m 289.87738,448.12195 0,3.50708 1.55518,0 q 1.11877,0 1.56311,-0.38086 0.45227,-0.38086 0.45227,-1.32507 0,-0.96009 -0.46814,-1.38062 -0.46814,-0.42053 -1.54724,-0.42053 l -1.55518,0 z m 0,-4.61792 0,2.75329 1.55518,0 q 0.88867,0 1.26159,-0.31738 0.38086,-0.31738 0.38086,-1.04736 0,-0.72998 -0.38879,-1.0553 -0.38086,-0.33325 -1.25366,-0.33325 l -1.55518,0 z m -2.26135,-1.86463 3.81653,0 q 1.9757,0 2.96753,0.75379 0.99975,0.74585 0.99975,2.23755 0,1.14258 -0.58716,1.78528 -0.58716,0.6427 -1.7218,0.74585 1.35681,0.13488 2.03919,0.91247 0.6903,0.77759 0.6903,2.17407 0,1.71387 -1.03149,2.48352 -1.03149,0.76966 -3.35632,0.76966 l -3.81653,0 0,-11.86219 z"
|
||||
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:16.25px;font-family:monospace;-inkscape-font-specification:'monospace Bold'"
|
||||
id="path3359" /><path
|
||||
d="m 297.76434,443.71826 0,-2.06299 7.05384,0 0,2.06299 -2.35657,0 0,7.72034 2.35657,0 0,2.06299 -7.05384,0 0,-2.06299 2.35657,0 0,-7.72034 -2.35657,0 z"
|
||||
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:16.25px;font-family:monospace;-inkscape-font-specification:'monospace Bold'"
|
||||
id="path3361" /><path
|
||||
d="m 307.1192,441.65527 2.51526,0 3.30078,8.60901 0,-8.60901 2.06299,0 0,11.84632 -2.49939,0 -3.31665,-8.60901 0,8.60901 -2.06299,0 0,-11.84632 z"
|
||||
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:16.25px;font-family:monospace;-inkscape-font-specification:'monospace Bold'"
|
||||
id="path3363" /><path
|
||||
d="m 319.37811,443.76587 0,7.62512 0.63477,0 q 1.38061,0 1.96777,-0.86487 0.58716,-0.8728 0.58716,-2.95959 0,-2.07092 -0.58716,-2.93579 -0.58716,-0.86487 -1.96777,-0.86487 l -0.63477,0 z m -2.3407,-2.1106 2.50733,0 q 2.90405,0 4.18152,1.38855 1.27746,1.38062 1.27746,4.52271 0,3.15002 -1.27746,4.54651 -1.27747,1.38855 -4.18152,1.38855 l -2.50733,0 0,-11.84632 z"
|
||||
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:16.25px;font-family:monospace;-inkscape-font-specification:'monospace Bold'"
|
||||
id="path3365" /><path
|
||||
d="m 327.33649,453.3429 0,-2.1344 q 0.62683,0.36499 1.19812,0.53955 0.57922,0.17456 1.11084,0.17456 1.26159,0 1.92016,-0.84107 0.66651,-0.849 0.70618,-2.53112 -0.37293,0.51574 -0.95215,0.77758 -0.57922,0.25391 -1.37268,0.25391 -1.59485,0 -2.46765,-1.00769 -0.8728,-1.01563 -0.8728,-2.87232 0,-1.98364 0.97595,-3.07067 0.97595,-1.08704 2.76123,-1.08704 2.16614,0 3.14209,1.45203 0.98389,1.44409 0.98389,4.67346 0,3.07068 -1.19812,4.60998 -1.19812,1.53138 -3.59436,1.53138 -0.55542,0 -1.15052,-0.11902 -0.58716,-0.11902 -1.19018,-0.34912 z m 3.07068,-5.72083 q 0.75378,0 1.15051,-0.54749 0.40466,-0.55541 0.40466,-1.60278 0,-1.03943 -0.40466,-1.58691 -0.39673,-0.55542 -1.15051,-0.55542 -0.76172,0 -1.17432,0.55542 -0.40466,0.54748 -0.40466,1.58691 0,1.03943 0.40466,1.59485 0.4126,0.55542 1.17432,0.55542 z"
|
||||
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:16.25px;font-family:monospace;-inkscape-font-specification:'monospace Bold'"
|
||||
id="path3367" /></g></g></svg>
|
After Width: | Height: | Size: 7.8 KiB |
5
infra-templates/bind9/config.yml
Normal file
5
infra-templates/bind9/config.yml
Normal file
@ -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
|
13
infra-templates/cloudflare/0/docker-compose.yml
Normal file
13
infra-templates/cloudflare/0/docker-compose.yml
Normal file
@ -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"
|
36
infra-templates/cloudflare/0/rancher-compose.yml
Normal file
36
infra-templates/cloudflare/0/rancher-compose.yml
Normal file
@ -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 <service>.<stack>.<environment>.<domain>"
|
||||
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
|
13
infra-templates/cloudflare/1/docker-compose.yml
Normal file
13
infra-templates/cloudflare/1/docker-compose.yml
Normal file
@ -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"
|
36
infra-templates/cloudflare/1/rancher-compose.yml
Normal file
36
infra-templates/cloudflare/1/rancher-compose.yml
Normal file
@ -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 <service>.<stack>.<environment>.<domain>"
|
||||
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
|
13
infra-templates/cloudflare/2/docker-compose.yml
Normal file
13
infra-templates/cloudflare/2/docker-compose.yml
Normal file
@ -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"
|
36
infra-templates/cloudflare/2/rancher-compose.yml
Normal file
36
infra-templates/cloudflare/2/rancher-compose.yml
Normal file
@ -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 <service>.<stack>.<environment>.<domain>"
|
||||
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
|
36
infra-templates/cloudflare/3/README.md
Normal file
36
infra-templates/cloudflare/3/README.md
Normal file
@ -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-<environemntUUID>.<domain>` 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 `<service>.<stack>.<environment>.<domain>`.
|
||||
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.
|
14
infra-templates/cloudflare/3/docker-compose.yml
Normal file
14
infra-templates/cloudflare/3/docker-compose.yml
Normal file
@ -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"
|
47
infra-templates/cloudflare/3/rancher-compose.yml
Normal file
47
infra-templates/cloudflare/3/rancher-compose.yml
Normal file
@ -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 '<service>.<stack>.<environment>.<domain>'.
|
||||
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
|
129
infra-templates/cloudflare/catalogIcon-cloudflare.svg
Normal file
129
infra-templates/cloudflare/catalogIcon-cloudflare.svg
Normal file
@ -0,0 +1,129 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 19.2.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||
viewBox="0 0 505.9 116" style="enable-background:new 0 0 505.9 116;" xml:space="preserve">
|
||||
<style type="text/css">
|
||||
.st0{fill:#414042;}
|
||||
.st1{fill:url(#SVGID_1_);}
|
||||
.st2{fill:#F68B1F;}
|
||||
.st3{fill:url(#SVGID_2_);}
|
||||
.st4{fill:url(#SVGID_3_);}
|
||||
.st5{fill:url(#SVGID_4_);}
|
||||
.st6{fill:url(#SVGID_5_);}
|
||||
.st7{fill:url(#SVGID_6_);}
|
||||
.st8{fill:url(#SVGID_7_);}
|
||||
</style>
|
||||
<g>
|
||||
<g>
|
||||
<path class="st0" d="M411.3,52.8h-9l-8.8,15.9h-11.8V52.8h-6.1v19h22.5l2-3.6h13.7l2.1,3.6h6.2L411.3,52.8z M401.5,65.5l5.4-9.9
|
||||
h0.1l5.5,9.9H401.5z"/>
|
||||
<path class="st0" d="M441,65.5c4.7-0.5,6.5-2,6.5-6.1c0-5.3-2.8-6.6-11.3-6.6h-14v19h6.1V55.9h8c4.6,0,5.2,0.7,5.2,3.4
|
||||
c0,2.6-0.8,3.1-4.8,3.2h-6.9l11,9.3h7.7L441,65.5z"/>
|
||||
<path class="st0" d="M456.5,60.7h14.9v3h-14.9v5.1h15.8v3.1h-21.9v-19h21.8V56h-15.7L456.5,60.7L456.5,60.7z"/>
|
||||
</g>
|
||||
<g>
|
||||
<path class="st0" d="M236.5,68.3h-11.6c-4.7,0-6.2-2.5-6.2-5v-5.2c0-3.6,2-4.6,7.3-4.6h9l0,0h3.3v-3.6H226
|
||||
c-10.1,0-14.4,2.2-14.4,8.1v5.2c0,4.6,2.1,8.6,13.2,8.6h13.6v-3.6L236.5,68.3L236.5,68.3z"/>
|
||||
</g>
|
||||
<g>
|
||||
<path class="st0" d="M246.8,68.7h14.8v3.1h-20.9v-19h6.1L246.8,68.7L246.8,68.7z"/>
|
||||
</g>
|
||||
<g>
|
||||
<path class="st0" d="M288.3,59.6v5.1c0,6.1-3.9,7.3-13.5,7.3c-9.8,0-13.4-1-13.4-7.3v-5.1c0-5.9,3.3-7,13.4-7
|
||||
C283.9,52.6,288.3,53.5,288.3,59.6z M267.5,59.6v5.1c0,3.8,1.2,4.1,7.3,4.1c5.5,0,7.4-0.5,7.4-4.1v-5.1c0.1-3.6-2-3.8-7.4-3.8
|
||||
C268.2,55.7,267.6,56.6,267.5,59.6z"/>
|
||||
</g>
|
||||
<g>
|
||||
<path class="st0" d="M317,52.8v13.5c0,5.3-5.5,5.7-13.2,5.7c-7.4,0-13.2-0.3-13.2-5.7V52.8h6.1v13.5c0,2,1.2,2.5,7.1,2.5
|
||||
c5.6,0,7.2-0.5,7.2-2.5V52.8H317z"/>
|
||||
</g>
|
||||
<g>
|
||||
<path class="st0" d="M320.2,52.8h15.2c8.8,0,12.5,1.9,12.5,7.1v4.5c0,4-1.9,7.5-11.5,7.5h-16.2V52.8z M336.4,68.7
|
||||
c4.1,0,5.4-2.2,5.4-4.3v-4.5c0-3.2-1.7-4-6.4-4h-9.1v12.8H336.4z"/>
|
||||
</g>
|
||||
<g>
|
||||
<path class="st0" d="M357,59.5h16v3.4h-16v8.9h-6.9V50.2h23.8v3.5H357V59.5z"/>
|
||||
</g>
|
||||
<path class="st0" d="M477.1,52.5c0.9,0,1.6,0.7,1.6,1.6s-0.7,1.6-1.6,1.6s-1.6-0.7-1.6-1.6S476.2,52.5,477.1,52.5z M477.1,55.4
|
||||
c0.7,0,1.2-0.6,1.2-1.3s-0.5-1.3-1.2-1.3s-1.2,0.6-1.2,1.3C475.9,54.8,476.4,55.4,477.1,55.4z M476.5,53.2h0.6
|
||||
c0.4,0,0.8,0.1,0.8,0.5c0,0.3-0.2,0.5-0.4,0.5l0.4,0.7h-0.5l-0.4-0.7h-0.1v0.7h-0.4V53.2z M476.9,53.9h0.2c0.1,0,0.3,0,0.3-0.2
|
||||
s-0.2-0.2-0.3-0.2h-0.2V53.9z"/>
|
||||
|
||||
<radialGradient id="SVGID_1_" cx="162.9412" cy="-122.7475" r="32.463" fx="162.1466" fy="-121.0777" gradientTransform="matrix(1 0 0 -1 0 -60)" gradientUnits="userSpaceOnUse">
|
||||
<stop offset="0" style="stop-color:#FFFFFF"/>
|
||||
<stop offset="0.1902" style="stop-color:#FCE800"/>
|
||||
<stop offset="0.8593" style="stop-color:#EC8F27"/>
|
||||
</radialGradient>
|
||||
<polygon class="st1" points="160.2,42 164.1,28.5 164.6,28.6 165,42.7 172.3,30.8 172.9,31.1 169.5,44.7 179.8,35 180.3,35.4
|
||||
173.4,47.7 185.8,41.1 186.2,41.6 176.4,51.7 190.1,48.6 190.4,49.2 178.2,56.3 192.3,56.8 192.3,57.4 178.8,61.2 192.3,65.2
|
||||
192.3,65.8 178.1,66 190.1,73.5 189.8,74.1 176.2,70.7 185.8,80.9 185.4,81.5 173.2,74.5 179.8,86.8 179.2,87.3 169.1,77.4
|
||||
172.4,91 171.8,91.4 164.6,79.3 164.4,93.3 163.8,93.4 159.8,79.9 155.8,93.4 155.1,93.3 155.1,79.3 154.7,79.1 146.9,90.8
|
||||
150.3,77.3 140,86.9 139.4,86.4 146.4,74.2 133.9,80.7 133.5,80.2 143.3,70.3 129.5,73.3 129.4,72.8 141.6,65.6 127.6,65.1
|
||||
127.4,64.5 140.9,60.7 127.5,56.7 127.6,56.1 141.7,55.8 129.8,48.6 129.9,48 143.6,51.4 133.9,41.1 134.4,40.6 146.7,47.3
|
||||
140,35.1 140.4,34.6 150.7,44.5 147.4,30.8 147.2,30.5 155.4,42.7 155.6,28.5 156.4,28.5 "/>
|
||||
<path class="st2" d="M198.3,87.5c0-13.5-10.9-24.4-24.4-24.4c-5.4,0-10.5,1.8-14.5,4.8c0.5-2.6,0.8-5.2,0.8-7.9
|
||||
c0-22.5-18.2-40.7-40.7-40.7c-17.9,0-33.1,11.5-38.5,27.6c-3.1-2.3-6.9-3.7-11-3.7c-10.1,0-18.3,8.2-18.3,18.3
|
||||
c0,1.6,0.2,3.1,0.6,4.5c-14,0.4-25.2,11.9-25.2,26c0,1.6,0.2,3.2,0.4,4.8h169C197.8,94,198.3,90.8,198.3,87.5z"/>
|
||||
|
||||
<linearGradient id="SVGID_2_" gradientUnits="userSpaceOnUse" x1="119.6" y1="-111.4809" x2="119.6" y2="-79.6399" gradientTransform="matrix(1 0 0 -1 0 -60)">
|
||||
<stop offset="0" style="stop-color:#F68B1F"/>
|
||||
<stop offset="1" style="stop-color:#FFFFFF"/>
|
||||
</linearGradient>
|
||||
<path class="st3" d="M155.4,60c0,19.8-16.1,32.3-35.9,32.3S83.7,79.8,83.7,60s16.1-35.9,35.9-35.9S155.4,40.2,155.4,60"/>
|
||||
<path class="st2" d="M149.9,60.2c0,12.1-13.7,21.9-30.6,21.9s-30.6-9.8-30.6-21.9c0-12.1,13.7-21.9,30.6-21.9
|
||||
S149.9,48.1,149.9,60.2"/>
|
||||
|
||||
<linearGradient id="SVGID_3_" gradientUnits="userSpaceOnUse" x1="79.1347" y1="-59.4381" x2="89.26" y2="-69.5634" gradientTransform="matrix(0.9642 0.2653 0.2653 -0.9642 2.4232 -29.5861)">
|
||||
<stop offset="0" style="stop-color:#FFFFFF"/>
|
||||
<stop offset="4.820810e-02" style="stop-color:#FEF6ED"/>
|
||||
<stop offset="0.2569" style="stop-color:#FBD0A5"/>
|
||||
<stop offset="0.4442" style="stop-color:#F9B26B"/>
|
||||
<stop offset="0.6034" style="stop-color:#F79D42"/>
|
||||
<stop offset="0.7282" style="stop-color:#F69028"/>
|
||||
<stop offset="0.8033" style="stop-color:#F68B1F"/>
|
||||
</linearGradient>
|
||||
<circle class="st4" cx="70.2" cy="61.6" r="13.5"/>
|
||||
<path class="st2" d="M81.2,56.5c2.3,4-0.6,9.9-6.4,13.3c-5.8,3.4-12.4,2.9-14.7-1.1s0.6-9.9,6.4-13.3C72.3,52,78.9,52.5,81.2,56.5"
|
||||
/>
|
||||
|
||||
<linearGradient id="SVGID_4_" gradientUnits="userSpaceOnUse" x1="29.0499" y1="-111.8834" x2="67.3462" y2="-170.8475" gradientTransform="matrix(1 0 0 -1 0 -60)">
|
||||
<stop offset="0" style="stop-color:#FFFFFF"/>
|
||||
<stop offset="4.820810e-02" style="stop-color:#FEF6ED"/>
|
||||
<stop offset="0.2569" style="stop-color:#FBD0A5"/>
|
||||
<stop offset="0.4442" style="stop-color:#F9B26B"/>
|
||||
<stop offset="0.6034" style="stop-color:#F79D42"/>
|
||||
<stop offset="0.7282" style="stop-color:#F69028"/>
|
||||
<stop offset="0.8033" style="stop-color:#F68B1F"/>
|
||||
</linearGradient>
|
||||
<path class="st5" d="M74.4,92c0-11.8-9.6-21.4-21.4-21.4S31.6,80.2,31.6,92v0.1L74.4,92C74.4,92.1,74.4,92.1,74.4,92z"/>
|
||||
|
||||
<linearGradient id="SVGID_5_" gradientUnits="userSpaceOnUse" x1="181.0524" y1="-126.7036" x2="175.1763" y2="-143.9265" gradientTransform="matrix(1 0 0 -1 0 -60)">
|
||||
<stop offset="0" style="stop-color:#FFFFFF"/>
|
||||
<stop offset="4.820810e-02" style="stop-color:#FEF6ED"/>
|
||||
<stop offset="0.2569" style="stop-color:#FBD0A5"/>
|
||||
<stop offset="0.4442" style="stop-color:#F9B26B"/>
|
||||
<stop offset="0.6034" style="stop-color:#F79D42"/>
|
||||
<stop offset="0.7282" style="stop-color:#F69028"/>
|
||||
<stop offset="0.8033" style="stop-color:#F68B1F"/>
|
||||
</linearGradient>
|
||||
<path class="st6" d="M193.6,87.3c0-10.8-8.7-19.5-19.5-19.5c-10.8,0-19.5,8.7-19.5,19.5c0,1.5,0.2,3,0.5,4.4H193
|
||||
C193.4,90.3,193.6,88.8,193.6,87.3z"/>
|
||||
|
||||
<linearGradient id="SVGID_6_" gradientUnits="userSpaceOnUse" x1="113.15" y1="-134.5959" x2="113.15" y2="-153.4168" gradientTransform="matrix(1 0 0 -1 0 -60)">
|
||||
<stop offset="0" style="stop-color:#F68B1F"/>
|
||||
<stop offset="0.5308" style="stop-color:#CB672F"/>
|
||||
<stop offset="1" style="stop-color:#A1453F"/>
|
||||
</linearGradient>
|
||||
<polygon class="st7" points="194.4,92.4 193.8,90.9 192.9,89.6 191.8,87.8 190.8,86.4 189.3,84.7 187.9,83.2 186.3,81.7
|
||||
184.8,80.4 183.1,79.2 181.4,78.2 179.6,77.1 178,76.3 176.4,75.7 174.9,75.3 173.5,74.9 172,74.7 170.3,74.5 60,74.8 58.2,74.9
|
||||
56.5,74.9 54.5,75.2 52.9,75.5 50.8,76 49.4,76.5 47.9,77 46.3,77.6 44.4,78.6 43,79.3 41.1,80.5 39.4,81.8 37.7,83.2 36.2,84.7
|
||||
34.9,86.2 33.7,87.9 32.7,89.6 32,91 31.6,92.4 31.3,93.5 194.9,93.5 "/>
|
||||
|
||||
<radialGradient id="SVGID_7_" cx="135.6859" cy="-132.4141" r="43.4509" fx="162.6389" fy="-140.2917" gradientTransform="matrix(1 0 0 -1 0 -60)" gradientUnits="userSpaceOnUse">
|
||||
<stop offset="0" style="stop-color:#FFFFFF"/>
|
||||
<stop offset="0.1334" style="stop-color:#FCE800"/>
|
||||
<stop offset="0.8593" style="stop-color:#EC8F27"/>
|
||||
</radialGradient>
|
||||
<polygon class="st8" points="162.6,64.7 177.4,84 176.8,84.4 159.6,68.9 93.3,81 93.3,80.3 154.8,66.2 121,54.6 121.4,54.1 "/>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 7.8 KiB |
5
infra-templates/cloudflare/config.yml
Normal file
5
infra-templates/cloudflare/config.yml
Normal file
@ -0,0 +1,5 @@
|
||||
name: CloudFlare DNS
|
||||
description: |
|
||||
Rancher External DNS service powered by CloudFlare
|
||||
version: v0.6.0-rancher1
|
||||
category: External DNS
|
13
infra-templates/dnsimple/0/docker-compose.yml
Normal file
13
infra-templates/dnsimple/0/docker-compose.yml
Normal file
@ -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"
|
36
infra-templates/dnsimple/0/rancher-compose.yml
Normal file
36
infra-templates/dnsimple/0/rancher-compose.yml
Normal file
@ -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 <service>.<stack>.<environment>.<root domain>"
|
||||
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
|
13
infra-templates/dnsimple/1/docker-compose.yml
Normal file
13
infra-templates/dnsimple/1/docker-compose.yml
Normal file
@ -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"
|
36
infra-templates/dnsimple/1/rancher-compose.yml
Normal file
36
infra-templates/dnsimple/1/rancher-compose.yml
Normal file
@ -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 <service>.<stack>.<environment>.<root domain>"
|
||||
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
|
36
infra-templates/dnsimple/2/README.md
Normal file
36
infra-templates/dnsimple/2/README.md
Normal file
@ -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-<environemntUUID>.<domain>` 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 `<service>.<stack>.<environment>.<domain>`.
|
||||
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.
|
14
infra-templates/dnsimple/2/docker-compose.yml
Normal file
14
infra-templates/dnsimple/2/docker-compose.yml
Normal file
@ -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"
|
45
infra-templates/dnsimple/2/rancher-compose.yml
Normal file
45
infra-templates/dnsimple/2/rancher-compose.yml
Normal file
@ -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 '<service>.<stack>.<environment>.<domain>'.
|
||||
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
|
105
infra-templates/dnsimple/catalogIcon-dnsimple.svg
Normal file
105
infra-templates/dnsimple/catalogIcon-dnsimple.svg
Normal file
@ -0,0 +1,105 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 19.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||
viewBox="-106 195.9 505.9 331.1" style="enable-background:new -106 195.9 505.9 331.1;" xml:space="preserve">
|
||||
<style type="text/css">
|
||||
.st0{fill:#3D3D3D;}
|
||||
.st1{fill:#0D5E8C;}
|
||||
.st2{fill:#0071BC;}
|
||||
.st3{fill:#E6E6E6;}
|
||||
.st4{fill:#F7C94A;}
|
||||
.st5{fill:#313131;}
|
||||
.st6{fill:#414042;}
|
||||
.st7{fill-rule:evenodd;clip-rule:evenodd;fill:url(#SVGID_1_);}
|
||||
.st8{fill:#F68B1F;}
|
||||
.st9{fill-rule:evenodd;clip-rule:evenodd;fill:url(#SVGID_2_);}
|
||||
.st10{fill-rule:evenodd;clip-rule:evenodd;fill:#F68B1F;}
|
||||
.st11{fill:url(#SVGID_3_);}
|
||||
.st12{fill:url(#SVGID_4_);}
|
||||
.st13{fill:url(#SVGID_5_);}
|
||||
.st14{fill:url(#SVGID_6_);}
|
||||
.st15{fill-rule:evenodd;clip-rule:evenodd;fill:url(#SVGID_7_);}
|
||||
</style>
|
||||
<g>
|
||||
<g>
|
||||
<path class="st0" d="M35.3,285.6l7.2-7.8c3.4-3.7,7.6-4.6,11.1-1.3c2.8,2.6,2.8,6.2,1.6,8.6c1-0.1,2,0.1,3,0.3
|
||||
c2.3,0.7,4.6,1.8,6.1,0.1c0.4-0.4,0.6-0.9,0.6-0.9l3,3.5c0,0-0.7,1.2-1.5,2.1c-2.1,2.3-4.2,2.7-8.4,1.3c-1.9-0.7-5-2.1-5.9-1
|
||||
l-1,1.1l7.5,7l-4.3,4.7L35.3,285.6z M43.1,284l4.7,4.3l1.6-1.7c1.2-1.4,2.3-3.3,0.3-5.2c-1.7-1.5-3.2-1-4.4,0.3L43.1,284z"/>
|
||||
<path class="st0" d="M58.5,263l5.2-3.9l22.7,15.3l-5.2,3.9l-4.3-2.9l-6.9,5.3l1.7,4.9l-4.5,3.4L58.5,263z M68.3,275.9l4.4-3.4
|
||||
l-4.7-3.3c-1.6-1.1-3.4-3-3.4-3l-0.1,0.1c0,0,1.3,2.3,1.9,4.1L68.3,275.9z"/>
|
||||
<path class="st0" d="M74.9,251.2l6.1-3.1l11.9,8.4c1,0.7,2.6,2.1,3.8,3.2l0.1-0.1c-0.7-1.3-1.8-3-2.5-4.4l-5.6-11.1l4.7-2.4
|
||||
l11.8,23.2l-6,3l-12.1-8.2c-1.1-0.7-2.5-1.9-3.6-2.9l-0.1,0.1c0.8,1.2,1.7,2.7,2.4,4l5.6,11.1l-4.7,2.4L74.9,251.2z"/>
|
||||
<path class="st0" d="M102.8,251.8c-2.7-9,0.7-14,7.6-16.1c7.3-2.1,11.3,1,12.1,6.6l-5.6,2.2c-0.5-4.1-2.6-5.3-5.3-4.4
|
||||
c-2.7,0.8-4.3,3.4-2.4,9.8c2,6.8,4.9,7.8,7.6,7c2.5-0.7,4.1-2.9,2.7-6.1l5.5-1c1.9,4.9-0.7,9.7-7.3,11.7
|
||||
C111,263.5,105.5,260.8,102.8,251.8z"/>
|
||||
<path class="st0" d="M126.1,232.2l6.4-0.7l1,9.7l7.8-0.8l-1-9.7l6.4-0.7l2.7,25.8l-6.4,0.7l-1.1-10.9l-7.8,0.8l1.1,10.9l-6.4,0.7
|
||||
L126.1,232.2z"/>
|
||||
<path class="st0" d="M153.7,230.1l17.1,1.1l-0.3,4.8l-10.7-0.7l-0.4,5.6l9,0.6l-0.3,4.8l-9-0.6l-0.4,6.1l11.1,0.7l-0.3,4.8
|
||||
L152,256L153.7,230.1z"/>
|
||||
<path class="st0" d="M176.8,232.1l10.4,2.4c4.9,1.1,7.7,4.3,6.6,8.9c-0.9,3.8-4,5.5-6.7,5.7c0.6,0.8,1,1.8,1.2,2.8
|
||||
c0.6,2.4,0.7,4.9,2.9,5.4c0.6,0.1,1.1,0,1.1,0l-1.5,4.3c0,0-1.4,0-2.6-0.2c-3-0.7-4.4-2.3-5.3-6.7c-0.3-2-0.6-5.4-2-5.7l-1.4-0.3
|
||||
l-2.3,10l-6.2-1.5L176.8,232.1z M182,238l-1.4,6.2l2.2,0.5c1.8,0.4,4,0.3,4.6-2.4c0.5-2.2-0.7-3.3-2.5-3.7L182,238z"/>
|
||||
<path class="st0" d="M208.8,241.1l8.9,4.4c5.8,2.8,8.6,8.4,4.6,16.6c-3.9,8-10,9.7-16,6.7l-8.9-4.4L208.8,241.1z M207.8,264.3
|
||||
c2.6,1.2,5.8,0.9,8.7-5.1c2.9-6,1.2-8.5-1.4-9.8l-2.6-1.3l-7.3,14.9L207.8,264.3z"/>
|
||||
<path class="st0" d="M233.2,253.8l5.5,4.1l-2.2,14.4c-0.2,1.2-0.8,3.3-1.2,4.9l0.1,0.1c0.8-1.2,1.9-3,2.8-4.2l7.4-10l4.2,3.1
|
||||
L234.3,287l-5.4-4l2-14.5c0.2-1.3,0.6-3.1,1-4.5l-0.1-0.1c-0.8,1.2-1.7,2.7-2.5,3.9l-7.4,10l-4.2-3.1L233.2,253.8z"/>
|
||||
<path class="st0" d="M245.4,286.1c-1.8,1.1-3,3.3-0.2,6.3c1.8,2,3.3,1.9,4.3,0.9c1.6-1.5,0.5-3.4-0.6-5.9
|
||||
c-1.7-3.7-3.5-8.3,0.4-12.1c3.5-3.3,8.2-2.6,12.5,2.1c5.2,5.7,3.4,10.5-0.1,12.6l-4.4-3.9c2.4-1.8,2.9-3.7,0.8-5.9
|
||||
c-1.4-1.5-2.7-1.8-3.9-0.7c-1.6,1.5-0.6,3.4,0.5,5.9c1.7,3.7,3.8,8.2-0.1,11.9c-3.4,3.2-8.2,3-12.8-1.9c-4.3-4.6-5.2-9.8-0.6-12.9
|
||||
L245.4,286.1z"/>
|
||||
</g>
|
||||
</g>
|
||||
<g>
|
||||
<g>
|
||||
<g>
|
||||
<path class="st1" d="M191,321.6l-2.2-13.7c-0.7-4.3-2.2-8-3.6-8s-2.3,3.5-2.3,7.8v3.5c0,4.4-3.9,8.6-8.3,8.6h-3.5
|
||||
c-0.3,0-0.2-0.6-0.2-0.6v9.7c0,0,0,0.9,0.2,0.9h13.2C188.8,329.9,191.7,325.9,191,321.6z"/>
|
||||
</g>
|
||||
</g>
|
||||
<g>
|
||||
<path class="st1" d="M113,321.6l2.2-13.7c0.7-4.3,2.7-8,4-8s2.7,3.5,2.7,7.8v3.5c0,4.4,3.1,8.6,7.4,8.6h3.5c0.3,0,1-0.6,1-0.6v9.7
|
||||
c0,0-0.8,0.9-1,0.9h-13.2C115.3,329.9,112.3,325.9,113,321.6z"/>
|
||||
</g>
|
||||
<path class="st2" d="M171.6,362.9c0,2.8-2.2,5-5,5h-28c-2.8,0-5-2.2-5-5v-48c0-2.8,2.2-5,5-5h28c2.8,0,5,2.2,5,5V362.9z"/>
|
||||
</g>
|
||||
<g>
|
||||
<path class="st3" d="M326.7,380.9c-1.3-95.1-79.1-172-174.5-172c-93.9,0-170.7,74.6-174.4,167.6c1.8,0.8,3.4,2.3,4.5,4.3
|
||||
c1.5,2.7,1.5,5.5,1.5,7.4c0,0.9,0,1.8,0,2.7h315.7c0-1.4,0-2.7,0-4.1c0-2.5,0.5-4.4,1.4-5.9h-33.7c-1.3-62.3-52.4-112.5-115-112.5
|
||||
s-113.6,50.2-115,112.5h-49.5c1.3-89.6,74.6-162,164.5-162c89,0,161.7,71.1,164.4,159.4c2.2,2.1,3.4,4.9,3.4,8.8c0,1.3,0,2.5,0,3.8
|
||||
h67.9v-10H326.7z M152.2,278.4c57.1,0,103.6,45.8,105,102.5H47.2C48.6,324.2,95.1,278.4,152.2,278.4z"/>
|
||||
<path class="st3" d="M-36.5,387.9c0-1.3,0.1-2.9,0.4-4.5c0.2-0.9,0.5-1.7,0.9-2.5h-48.9v10h47.6C-36.5,389.9-36.5,388.9-36.5,387.9
|
||||
z"/>
|
||||
</g>
|
||||
<path class="st4" d="M231.4,457.7c0,3.7,0,7.4,0,11.1c0,4.4-2.3,7-6,7c-3.5,0-5.8-2.7-5.8-6.9c0-6.9,0.1-13.7,0-20.6
|
||||
c-0.2-7.8-5.9-14.1-13.3-14.9c-7.7-0.8-14.7,4.1-16.4,11.8c-0.6,2.7-0.3,5.5-0.3,8.3c0,5.1,0,10.3,0,15.4c0,4.2-2.3,6.8-5.8,6.9
|
||||
c-3.4,0.1-6.1-2.5-6.2-6.6c-0.1-6.8,0-13.5-0.1-20.3c-0.1-9.5-6.8-16-16-15.5c-7.3,0.4-13.6,6.6-13.8,14c-0.2,7.2,0,14.4-0.1,21.5
|
||||
c-0.1,5.4-4.6,8.4-8.9,6.1c-1.9-1-3.1-2.7-3.1-4.7c0.1-8.8-0.9-17.7,0.5-26.4c1.7-10.5,7.9-17.7,18-21.1c10.1-3.3,19.3-1.3,27,6.1
|
||||
c2.1,1.9,2.9,1.8,5,0c8.6-7.9,18.7-9.7,29.3-5.1c10.3,4.5,15.7,12.8,16.1,24.1C231.5,451.1,231.4,454.4,231.4,457.7L231.4,457.7z"/>
|
||||
<path class="st5" d="M-20.5,419.2c0,10,0,20.1,0,30.1c0,13.9-11.4,26.1-24.9,26.9c-14.7,0.8-27.2-9.2-28.8-23.6
|
||||
c-1.2-10,2.2-18.5,10.3-24.6c8.4-6.3,17.8-7.5,27.6-3.2c3.6,1.6,4,1.4,4-2.6c0-11.5,0-23,0-34.4c0-1.2,0-2.5,0.3-3.7
|
||||
c0.6-2.7,2.5-4,5-4.3c2.4-0.3,4.4,0.7,5.6,2.9c0.9,1.7,1,3.5,1,5.4C-20.5,398.5-20.5,408.9-20.5,419.2z M-62.4,449.2
|
||||
c0,8.4,6.4,15.1,14.6,15.1c8.3,0,15.3-6.8,15.3-15c0-8.1-6.8-14.9-14.9-14.9C-55.9,434.5-62.3,440.9-62.4,449.2z"/>
|
||||
<path class="st4" d="M240.6,478.8c0-10.1,0-20.3,0-30.4c0.1-14.5,10.1-25.7,24.9-27.1c12.5-1.2,25.1,6.8,28.3,21
|
||||
c2.4,10.7-0.9,20-9.5,26.9c-8.7,6.9-18.4,7.8-28.6,3.2c-3.3-1.5-3.3-1.6-3.3,2.2c0,12.3,0,24.6,0,36.9c0,2.6-1,4.6-3.4,5.7
|
||||
c-2.3,1-4.4,0.7-6.3-0.8c-1.7-1.3-2.1-3.1-2.1-5.2C240.6,500.4,240.6,489.6,240.6,478.8z M267.5,463.1c8.5,0,15-6.4,15.1-14.8
|
||||
c0-8.5-6.5-15-14.9-15c-8.3,0-15.1,6.6-15.2,14.8C252.4,456.3,259.2,463.1,267.5,463.1z"/>
|
||||
<path class="st4" d="M338.2,454.9c2,5.3,6.8,8.7,13,8.8c6,0.1,12.1,0,18.1,0c0.9,0,1.9,0,2.8,0c4.1,0.4,6.5,2.9,6.3,6.4
|
||||
c-0.2,3.4-2.7,5.7-6.8,5.6c-8.4-0.2-16.8,0.8-25.2-0.5c-12.7-2.1-22.3-13.9-22.1-26.5c0.2-13.5,10.1-24.8,23.2-26.5
|
||||
c16.2-2.2,30.8,10,30.8,25.8c0,4.5-2.3,6.8-6.8,6.9c-10.1,0-20.3,0-30.4,0C340.3,454.9,339.3,454.9,338.2,454.9z M351.1,443
|
||||
L351.1,443c4,0,8,0,11.9,0.1c1.7,0,2.4-0.5,1.3-2.1c-3.1-4.6-7.2-7.1-12.8-7c-5.6,0-9.7,2.5-12.8,7.1c-1.2,1.8-0.2,2,1.3,1.9
|
||||
C343.7,442.9,347.4,443,351.1,443z"/>
|
||||
<path class="st5" d="M42.3,458c0,3.8,0,7.6,0,11.4c0,4.1-2.2,6.7-5.5,6.8c-3.5,0.1-6.2-2.5-6.3-6.5c-0.2-6.7-0.1-13.3-0.1-20
|
||||
c0-9.2-6.2-15.7-14.9-15.8c-8.4-0.1-15,6.7-15,15.8c-0.1,6.8,0,13.5-0.1,20.3c-0.1,3.2-2,5.5-4.7,6.1c-2.9,0.6-5-0.7-6.4-3.1
|
||||
c-0.7-1.1-0.8-2.3-0.8-3.6c0-7.4-0.1-14.8,0-22.1c0.2-10,7.8-20,17.5-23.6c10.1-3.8,21.4-1.1,28.8,6.7c5,5.2,7.6,11.3,7.4,18.6
|
||||
C42.2,451.9,42.3,455,42.3,458z"/>
|
||||
<path class="st4" d="M303.5,427.7c0-13.6,0-27.3,0-40.9c0-2.6,0.8-4.8,3.2-6.2c2.1-1.1,4.1-1,6.1,0.3c2.2,1.4,2.8,3.6,2.8,6.1
|
||||
c0,10.6,0,21.1,0,31.7c0,16.6,0,33.2,0,49.8c0,3.1-0.8,5.7-3.9,6.9c-4.1,1.7-8.1-1.3-8.2-6.2c-0.1-7.6,0-15.2,0-22.7
|
||||
C303.5,440.2,303.5,433.9,303.5,427.7z"/>
|
||||
<path class="st4" d="M58.6,475.8c-4.2,0.1-6.8-2-7-5.6c-0.2-3.7,2-6,6.2-6.5c9.6-1.2,14.5-6.5,14.8-16.3
|
||||
c0.4-13.7,12.5-25.5,26.1-25.6c3.8,0,6.5,2.3,6.6,5.7c0.1,3.6-2.2,6.1-6,6.4c-9.3,0.8-14.7,6.4-15,15.9
|
||||
C83.9,463.8,72.4,475.5,58.6,475.8z"/>
|
||||
<path class="st4" d="M114.5,448.9c0-6.7,0-13.3,0-20c0-4.2,2.6-7.1,6.1-7.1c3.4,0,6,2.7,6,6.8c0.1,13.4,0.1,26.9,0,40.3
|
||||
c0,4.3-2.7,7-6.3,6.9s-5.8-2.8-5.8-7.3C114.4,462,114.5,455.4,114.5,448.9z"/>
|
||||
<path class="st4" d="M120.6,416.7c-3.2,0-6.1-2.8-6.1-6c0-3.2,2.9-6.1,6.1-6c3.2,0,6,3,6,6.2C126.5,413.9,123.6,416.7,120.6,416.7z"
|
||||
/>
|
||||
</svg>
|
After Width: | Height: | Size: 7.9 KiB |
5
infra-templates/dnsimple/config.yml
Normal file
5
infra-templates/dnsimple/config.yml
Normal file
@ -0,0 +1,5 @@
|
||||
name: DNSimple DNS
|
||||
description: |
|
||||
Rancher External DNS service powered by DNSimple
|
||||
version: v0.6.0-rancher1
|
||||
category: External DNS
|
17
infra-templates/dnsupdate-rfc2136/0/docker-compose.yml
Normal file
17
infra-templates/dnsupdate-rfc2136/0/docker-compose.yml
Normal file
@ -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"
|
47
infra-templates/dnsupdate-rfc2136/0/rancher-compose.yml
Normal file
47
infra-templates/dnsupdate-rfc2136/0/rancher-compose.yml
Normal file
@ -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 <service>.<stack>.<environment>.<hosted zone>"
|
||||
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
|
36
infra-templates/dnsupdate-rfc2136/1/README.md
Normal file
36
infra-templates/dnsupdate-rfc2136/1/README.md
Normal file
@ -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-<environemntUUID>.<domain>` 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 `<service>.<stack>.<environment>.<domain>`.
|
||||
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.
|
16
infra-templates/dnsupdate-rfc2136/1/docker-compose.yml
Normal file
16
infra-templates/dnsupdate-rfc2136/1/docker-compose.yml
Normal file
@ -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"
|
56
infra-templates/dnsupdate-rfc2136/1/rancher-compose.yml
Normal file
56
infra-templates/dnsupdate-rfc2136/1/rancher-compose.yml
Normal file
@ -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 '<service>.<stack>.<environment>.<domain>'.
|
||||
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
|
@ -0,0 +1,139 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
version="1.1"
|
||||
id="Calque_1"
|
||||
x="0px"
|
||||
y="0px"
|
||||
width="128"
|
||||
height="128"
|
||||
viewBox="0 0 127.99999 128"
|
||||
enable-background="new 0 0 595.28 841.89"
|
||||
xml:space="preserve"
|
||||
inkscape:version="0.91 r13725"
|
||||
sodipodi:docname="DNS.svg"><metadata
|
||||
id="metadata51"><rdf:RDF><cc:Work
|
||||
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
|
||||
id="defs49" /><sodipodi:namedview
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1"
|
||||
objecttolerance="10"
|
||||
gridtolerance="10"
|
||||
guidetolerance="10"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="1451"
|
||||
inkscape:window-height="954"
|
||||
id="namedview47"
|
||||
showgrid="false"
|
||||
fit-margin-top="0"
|
||||
fit-margin-left="0"
|
||||
fit-margin-right="0"
|
||||
fit-margin-bottom="0"
|
||||
inkscape:zoom="0.28032165"
|
||||
inkscape:cx="70.649676"
|
||||
inkscape:cy="63.929993"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="27"
|
||||
inkscape:window-maximized="0"
|
||||
inkscape:current-layer="Calque_1" /><circle
|
||||
cx="64"
|
||||
cy="64"
|
||||
r="64"
|
||||
id="circle3"
|
||||
style="fill:#7bb6dc" /><circle
|
||||
cx="64"
|
||||
cy="62"
|
||||
r="38"
|
||||
id="circle5"
|
||||
style="fill:#256f9a" /><path
|
||||
d="m 104.293,77 -1.817,0 C 104.105,72.641 105,67.926 105,63 105,40.908 87.09,23 65,23 42.908,23 25,40.908 25,63 c 0,16.786 10.343,31.147 25,37.081 l 0,4.189 c 0,0.955 0.765,1.73 1.707,1.73 l 52.586,0 c 0.942,0 1.707,-0.775 1.707,-1.73 l 0,-25.541 C 106,77.773 105.235,77 104.293,77 Z"
|
||||
id="path7"
|
||||
inkscape:connector-curvature="0"
|
||||
style="opacity:0.25;fill:#010202" /><path
|
||||
d="m 64,22 c -22.092,0 -40,17.908 -40,40 0,22.09 17.908,40 40,40 22.09,0 40,-17.91 40,-40 C 104,39.908 86.09,22 64,22 Z m 0,76 C 44.117,98 28,81.881 28,62 28,42.117 44.117,26 64,26 c 19.881,0 36,16.117 36,36 0,19.881 -16.119,36 -36,36 z"
|
||||
id="path9"
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:#ffffff" /><path
|
||||
stroke-miterlimit="10"
|
||||
d="m 32,45 c 6,-4 21.852,-4.389 33,-2 14,3 34,13 36,24"
|
||||
id="path11"
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:3;stroke-miterlimit:10" /><path
|
||||
stroke-miterlimit="10"
|
||||
d="M 92,85 C 85.242,87.518 64.815,82.799 55,77 33,64 24,48 24,42 c 0,-3 7,-2 7,-2"
|
||||
id="path13"
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:3;stroke-miterlimit:10" /><path
|
||||
stroke-miterlimit="10"
|
||||
d="M 97.597,46.563 C 97.758,52.065 88,76 79,85 71.272,92.727 64,98 61,99"
|
||||
id="path15"
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:3;stroke-miterlimit:10" /><path
|
||||
stroke-miterlimit="10"
|
||||
d="m 94,39 c 0,0 3.452,-6.534 0,-9 C 87,25 62,41 49.812,54.414 42.145,62.852 33,91.001 37,97.001 c 1.24,1.859 4,-2 4,-2"
|
||||
id="path17"
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:3;stroke-miterlimit:10" /><circle
|
||||
cx="62.5"
|
||||
cy="42.5"
|
||||
r="5.5"
|
||||
id="circle19"
|
||||
style="fill:#ffffff" /><circle
|
||||
cx="41.5"
|
||||
cy="68.5"
|
||||
r="5.5"
|
||||
id="circle21"
|
||||
style="fill:#ffffff" /><circle
|
||||
cx="93.5"
|
||||
cy="57.5"
|
||||
r="5.5"
|
||||
id="circle23"
|
||||
style="fill:#ffffff" /><g
|
||||
id="g25"
|
||||
transform="translate(-234.125,-356.875)"><path
|
||||
d="m 339.125,460.145 c 0,0.955 -0.765,1.73 -1.707,1.73 l -52.586,0 c -0.942,0 -1.707,-0.775 -1.707,-1.73 l 0,-25.541 c 0,-0.955 0.765,-1.729 1.707,-1.729 l 52.586,0 c 0.942,0 1.707,0.773 1.707,1.729 l 0,25.541 z"
|
||||
id="path27"
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:#ffffff" /><rect
|
||||
x="286.125"
|
||||
y="435.875"
|
||||
width="50"
|
||||
height="23"
|
||||
id="rect29"
|
||||
style="fill:#f6a356" /><polygon
|
||||
points="306.125,440.875 306.125,455.875 310.125,455.875 310.125,446.875 315.125,455.875 319.125,455.875 319.125,440.875 315.125,440.875 315.125,449.875 310.125,440.875 "
|
||||
id="polygon31"
|
||||
style="opacity:0.25;fill:#231f20" /><polygon
|
||||
points="305.125,439.875 305.125,454.875 309.125,454.875 309.125,445.875 314.125,454.875 318.125,454.875 318.125,439.875 314.125,439.875 314.125,448.875 309.125,439.875 "
|
||||
id="polygon33"
|
||||
style="fill:#ffffff" /><path
|
||||
d="m 297.125,440.875 c -1.131,0 -0.162,0 -1,0 l -2,0 -2,0 0,15 2,0 2,0 c 0.884,0 -0.043,0 1,0 4,0 7,-2 7,-6 l 0,-3 c 0,-4 -3,-6 -7,-6 z m 3,10.203 -0.04,0.199 c -0.188,0.926 -1.013,1.598 -1.96,1.598 l -2,0 0,-1.797 0,-5.203 0,-2 2,0 c 1.103,0 2,0.896 2,2 l 0,5.203 z"
|
||||
id="path35"
|
||||
inkscape:connector-curvature="0"
|
||||
style="opacity:0.25;fill:#231f20" /><path
|
||||
d="m 296.125,439.875 c -1.131,0 -0.162,0 -1,0 l -2,0 -2,0 0,15 2,0 2,0 c 0.884,0 -0.043,0 1,0 4,0 7,-2 7,-6 l 0,-3 c 0,-4 -3,-6 -7,-6 z m 3,10.203 -0.04,0.199 c -0.188,0.926 -1.013,1.598 -1.96,1.598 l -2,0 0,-1.797 0,-5.203 0,-2 2,0 c 1.103,0 2,0.896 2,2 l 0,5.203 z"
|
||||
id="path37"
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:#ffffff" /><g
|
||||
id="g39"
|
||||
style="opacity:0.25"><path
|
||||
d="m 322.125,451.875 c 0.952,0.453 2.243,0.875 3.792,0.875 1.666,0 1.979,-0.381 1.979,-1.334 0,-0.908 -0.222,-1.248 -2.15,-1.854 -2.668,-0.865 -4.62,-2.205 -4.62,-4.324 0,-2.484 2.501,-4.363 6.262,-4.363 1.834,0 3.784,0.59 4.738,1 l -0.811,2.912 c -0.618,-0.281 -2.428,-0.961 -3.975,-0.961 -1.572,0 -2.11,0.48 -2.11,1.215 0,0.93 0.658,1.258 2.753,1.971 2.834,0.951 4.143,2.291 4.143,4.344 0,2.443 -2.047,4.52 -6.452,4.52 -1.834,0 -3.643,-0.547 -4.548,-1 l 0.999,-3.001 z"
|
||||
id="path41"
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:#231f20" /></g><g
|
||||
id="g43"><path
|
||||
d="m 321.125,450.875 c 0.952,0.453 2.243,0.875 3.792,0.875 1.666,0 1.979,-0.381 1.979,-1.334 0,-0.908 -0.222,-1.248 -2.15,-1.854 -2.668,-0.865 -4.62,-2.205 -4.62,-4.324 0,-2.484 2.501,-4.363 6.262,-4.363 1.834,0 3.784,0.59 4.738,1 l -0.811,2.912 c -0.618,-0.281 -2.428,-0.961 -3.975,-0.961 -1.572,0 -2.11,0.48 -2.11,1.215 0,0.93 0.658,1.258 2.753,1.971 2.834,0.951 4.143,2.291 4.143,4.344 0,2.443 -2.047,4.52 -6.452,4.52 -1.834,0 -3.643,-0.547 -4.548,-1 l 0.999,-3.001 z"
|
||||
id="path45"
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:#ffffff" /></g></g></svg>
|
After Width: | Height: | Size: 6.7 KiB |
5
infra-templates/dnsupdate-rfc2136/config.yml
Normal file
5
infra-templates/dnsupdate-rfc2136/config.yml
Normal file
@ -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
|
13
infra-templates/pointhq/0/docker-compose.yml
Normal file
13
infra-templates/pointhq/0/docker-compose.yml
Normal file
@ -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"
|
36
infra-templates/pointhq/0/rancher-compose.yml
Normal file
36
infra-templates/pointhq/0/rancher-compose.yml
Normal file
@ -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 <service>.<stack>.<environment>.<root domain>"
|
||||
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
|
13
infra-templates/pointhq/1/docker-compose.yml
Normal file
13
infra-templates/pointhq/1/docker-compose.yml
Normal file
@ -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"
|
36
infra-templates/pointhq/1/rancher-compose.yml
Normal file
36
infra-templates/pointhq/1/rancher-compose.yml
Normal file
@ -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 <service>.<stack>.<environment>.<root domain>"
|
||||
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
|
41
infra-templates/pointhq/catalogIcon-pointhq.svg
Normal file
41
infra-templates/pointhq/catalogIcon-pointhq.svg
Normal file
@ -0,0 +1,41 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 19.2.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||
viewBox="0 0 505.9 163.1" style="enable-background:new 0 0 505.9 163.1;" xml:space="preserve">
|
||||
<style type="text/css">
|
||||
.st0{fill:#00C7FC;}
|
||||
.st1{fill:#FFFFFF;}
|
||||
.st2{fill:#495755;}
|
||||
</style>
|
||||
<g>
|
||||
<circle class="st0" cx="89.9" cy="81.6" r="62.7"/>
|
||||
<circle class="st1" cx="77.8" cy="51" r="9"/>
|
||||
<circle class="st1" cx="114.8" cy="57.7" r="9"/>
|
||||
<circle class="st1" cx="87.6" cy="89.2" r="9"/>
|
||||
<circle class="st1" cx="56" cy="78.9" r="9"/>
|
||||
<circle class="st1" cx="77.8" cy="113.1" r="9"/>
|
||||
<circle class="st1" cx="128.6" cy="91.6" r="9"/>
|
||||
<polygon class="st1" points="91.5,93.5 60.9,82.7 62.7,77.6 83.8,85.1 74.2,47.6 115.3,55.1 114.3,60.4 81.4,54.4 "/>
|
||||
<polygon class="st1" points="80.3,114.1 75.3,112.1 85.9,86.5 128.7,88.9 128.4,94.2 89.4,92.1 "/>
|
||||
<path class="st2" d="M241.2,109.9h-13.5c-5.9,0-10.8-4.8-10.8-10.8V76.1c0-5.9,4.8-10.8,10.8-10.8h13.4c5.9,0,10.8,4.8,10.8,10.8
|
||||
v22.9C251.9,105.1,247.1,109.9,241.2,109.9z M227.7,74.1c-1.2,0-2.2,1-2.2,2.2v22.9c0,1.2,1,2.2,2.2,2.2h13.4c1.2,0,2.2-1,2.2-2.2
|
||||
V76.3c0-1.2-1-2.2-2.2-2.2H227.7z"/>
|
||||
<path class="st2" d="M467.9,108h-26.4v-8.6h26.4c1.2,0,2.2-1,2.2-2.2V85.1c0-1.2-1-2.2-2.2-2.2h-13.4v-8.6h13.4
|
||||
c5.9,0,10.8,4.8,10.8,10.8v12.1C478.6,103.1,473.8,108,467.9,108z"/>
|
||||
<path class="st2" d="M465.2,83h-13.5c-5.9,0-10.8-4.8-10.8-10.8V60.1c0-5.9,4.8-10.8,10.8-10.8h26.4v8.6h-26.4
|
||||
c-1.2,0-2.2,1-2.2,2.2v12.1c0,1.2,1,2.2,2.2,2.2h13.4V83H465.2z"/>
|
||||
<path class="st2" d="M369.5,109.7h-25.6V50.4h25.6c8.3,0,15.1,6.8,15.1,15.1v29.2C384.6,103,377.8,109.7,369.5,109.7z M352.6,101.1
|
||||
h17c3.6,0,6.5-2.9,6.5-6.5V65.5c0-3.6-2.9-6.5-6.5-6.5h-17V101.1z"/>
|
||||
<path class="st2" d="M340.9,108.7h-9.1c-5.9,0-10.8-4.8-10.8-10.8V55.7h8.6v42.2c0,1.2,1,2.2,2.2,2.2h9.1V108.7z"/>
|
||||
<path class="st2" d="M309.2,109.4h-8.6V75.8c0-0.7-0.6-1.3-1.3-1.3h-7.4c-6.5,0-9.6,8.8-9.6,10.3h-8.6c0-5.6,6.2-18.9,18.2-18.9
|
||||
h7.4c5.5,0,9.9,4.4,9.9,9.9L309.2,109.4L309.2,109.4z"/>
|
||||
<path class="st2" d="M185.2,108.4h-8.6V49.2H203c5.9,0,10.8,4.8,10.8,10.8v14.3c0,5.9-4.8,10.8-10.8,10.8h-17.8V108.4z M185.2,76.4
|
||||
h17.7c1.2,0,2.2-1,2.2-2.2V59.9c0-1.2-1-2.2-2.2-2.2h-17.7V76.4z"/>
|
||||
<rect x="259.5" y="65.1" class="st2" width="8.6" height="43.3"/>
|
||||
<rect x="273.7" y="66.1" class="st2" width="8.6" height="43.3"/>
|
||||
<rect x="259.5" y="51.6" class="st2" width="8.6" height="9.4"/>
|
||||
<rect x="312.4" y="65.9" class="st2" width="26.3" height="8.6"/>
|
||||
<polygon class="st2" points="424.2,108.4 397.9,64.5 397.9,107 389.3,107 389.3,49.4 399.4,49.4 425.6,94.4 425.6,49.4 434.2,49.4
|
||||
434.2,108.4 "/>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 2.7 KiB |
5
infra-templates/pointhq/config.yml
Normal file
5
infra-templates/pointhq/config.yml
Normal file
@ -0,0 +1,5 @@
|
||||
name: PointHQ DNS
|
||||
description: |
|
||||
Rancher External DNS service powered by PointHQ
|
||||
version: v0.2.1-rancher1
|
||||
category: External DNS
|
14
infra-templates/powerdns-external-dns/0/docker-compose.yml
Normal file
14
infra-templates/powerdns-external-dns/0/docker-compose.yml
Normal file
@ -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"
|
38
infra-templates/powerdns-external-dns/0/rancher-compose.yml
Normal file
38
infra-templates/powerdns-external-dns/0/rancher-compose.yml
Normal file
@ -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 <service>.<stack>.<environment>.<hosted zone>"
|
||||
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
|
@ -0,0 +1,51 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 19.2.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<svg version="1.1"
|
||||
id="Layer_1" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 505.9 76.7"
|
||||
style="enable-background:new 0 0 505.9 76.7;" xml:space="preserve">
|
||||
<style type="text/css">
|
||||
.st0{fill:none;enable-background:new ;}
|
||||
.st1{fill:#797979;}
|
||||
.st2{fill:#E17F03;}
|
||||
</style>
|
||||
<path class="st0" d="z"/>
|
||||
<g>
|
||||
<g>
|
||||
<path class="st1" d="M24.1,70H7V6.7h16.6c8.3,0,14.4,1.7,18.4,5c4.7,4,7,9.5,7,16.5c0,7.7-2.5,13.4-7.5,17.2
|
||||
c-3.4,2.5-8.3,3.8-14.7,3.8h-2.7V70z M24.1,35l0.8,0c2.1,0,3.7-0.6,5-1.9c1.2-1.3,1.8-3,1.8-5.2c0-2.2-0.6-4-1.8-5.3
|
||||
c-1.2-1.4-2.7-2.1-4.6-2.1h-1.2V35z"/>
|
||||
<path class="st1" d="M99.5,38.6c0,9.6-2.2,17.5-6.6,23.5c-4.4,6-10.1,9-17.1,9c-6.2,0-11.6-2.3-16-6.9c-5.6-5.8-8.4-14.6-8.4-26.3
|
||||
c0-11.2,2.9-19.8,8.8-25.7c4.3-4.4,9.5-6.6,15.5-6.6c7.3,0,13.1,3,17.4,8.9C97.4,20.5,99.5,28.5,99.5,38.6z M81.8,38.7
|
||||
c0-11.4-2-17.2-6.1-17.2c-2,0-3.6,1.5-4.8,4.5c-1.2,2.8-1.8,6.9-1.8,12.3c0,5.3,0.6,9.5,1.7,12.4c1.1,2.9,2.6,4.4,4.6,4.4
|
||||
c2,0,3.6-1.4,4.7-4.3C81.2,47.9,81.8,43.8,81.8,38.7z"/>
|
||||
<path class="st1" d="M157.3,70h-16.5l-3.9-22.2c-0.8-4.3-1.3-8-1.7-11.1c-0.2-1.6-0.4-2.9-0.5-3.9c-0.1-1-0.2-1.8-0.3-2.4
|
||||
c-0.1,1.1-0.3,3.2-0.6,6.3c-0.1,1.6-0.3,3.2-0.5,4.9c-0.2,1.7-0.4,3.5-0.7,5.5L129.4,70h-16.6L98.7,6.7h16.9l2.8,17.4
|
||||
c1.1,6.9,1.8,12.4,2.2,16.4l0.6,5.8l0.5-5c0.6-5.8,1.3-11.3,2.2-16.5l3.2-18.1h14.7l2.9,15.2c1.4,7.1,2.6,15.5,3.6,25.1
|
||||
c0.3-4.3,0.6-8.2,1-11.6c0.4-3.4,0.8-6.4,1.2-9.1l3.1-19.6h16.7L157.3,70z"/>
|
||||
<path class="st1" d="M171.7,70V6.7h31.8v14.9h-14.7v9.2h13.2v14.3h-13.2v9.7h14.7V70H171.7z"/>
|
||||
<path class="st1" d="M254.7,70h-18.5l-8.4-22.5c-0.1-0.4-0.2-0.9-0.4-1.5c-0.2-0.6-0.5-1.4-0.8-2.3l0.1,4.2V70h-17V6.7h17.5
|
||||
c7.7,0,13.5,1.5,17.3,4.5c4.9,3.9,7.3,9.4,7.3,16.6c0,7.7-3.3,12.9-9.8,15.9L254.7,70z M226.8,36h1.1c2,0,3.6-0.8,4.9-2.3
|
||||
c1.3-1.5,2-3.4,2-5.7c0-4.7-2.5-7.1-7.4-7.1h-0.6V36z"/>
|
||||
<path class="st1" d="M257.5,70V6.7h14.8c8.4,0,15,2.3,19.7,6.8c6.2,5.9,9.3,14.2,9.3,24.9c0,10.5-2.6,18.6-7.8,24.3
|
||||
c-4.5,4.9-11.1,7.3-19.9,7.3H257.5z M274.6,54.7c6.1-0.3,9.2-5.6,9.2-15.8c0-5.1-0.8-9-2.3-12c-1.6-3-3.7-4.4-6.3-4.4h-0.5V54.7z"
|
||||
/>
|
||||
<path class="st1" d="M306.5,70V6.7h16.3l8.6,22.2c0.5,1.3,1,2.8,1.6,4.5c0.6,1.7,1.2,3.6,1.9,5.9l1.8,5.6
|
||||
c-0.6-5.5-1.1-10.2-1.4-14.1c-0.3-3.9-0.5-7.2-0.5-9.8V6.7h16.3V70h-16.3l-8.6-23.3c-0.9-2.5-1.7-4.8-2.4-7
|
||||
c-0.7-2.2-1.4-4.2-1.9-6.2c0.4,4.5,0.6,8.3,0.8,11.6c0.2,3.3,0.2,6.2,0.2,8.7V70H306.5z"/>
|
||||
<path class="st1" d="M355.7,68.4V48.6c3.4,4.6,7,6.9,10.9,6.9c1.5,0,2.7-0.4,3.6-1.2c0.9-0.8,1.4-1.8,1.4-2.9c0-1.7-1-3.3-3-5
|
||||
l-2.8-2.2c-1.9-1.4-3.4-2.8-4.8-4.2c-1.3-1.4-2.4-2.8-3.2-4.3c-0.8-1.5-1.4-3-1.8-4.5c-0.4-1.6-0.6-3.2-0.6-4.9c0-3,0.7-6,2-9.3
|
||||
c0.7-1.5,1.5-2.9,2.4-4.1c0.9-1.2,1.9-2.3,3.1-3.3c3.2-2.7,7.1-4.1,11.7-4.1c4.1,0,8.2,1.1,12.3,3.2v19.3c-1.4-2.2-3-3.9-4.8-5.1
|
||||
c-1.8-1.2-3.5-1.9-5.2-1.9c-1.3,0-2.4,0.4-3.2,1.1c-0.9,0.7-1.3,1.6-1.3,2.7c0,1.7,1.2,3.4,3.5,5l2.7,2c3.6,2.6,6.2,5.3,7.7,8
|
||||
c1.6,2.7,2.4,5.9,2.4,9.6c0,6.2-1.9,11.4-5.7,15.4c-3.8,4-8.6,6.1-14.4,6.1C364.6,71.1,360.2,70.2,355.7,68.4z"/>
|
||||
</g>
|
||||
<g>
|
||||
<circle class="st2" cx="411.2" cy="20.9" r="15.3"/>
|
||||
<circle class="st2" cx="411.2" cy="55.8" r="15.3"/>
|
||||
<circle class="st2" cx="447.4" cy="20.9" r="15.3"/>
|
||||
<circle class="st2" cx="447.4" cy="55.8" r="15.3"/>
|
||||
<circle class="st2" cx="483.6" cy="20.9" r="15.3"/>
|
||||
<circle class="st2" cx="483.6" cy="55.8" r="15.3"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 3.7 KiB |
5
infra-templates/powerdns-external-dns/config.yml
Normal file
5
infra-templates/powerdns-external-dns/config.yml
Normal file
@ -0,0 +1,5 @@
|
||||
name: PowerDNS External
|
||||
description: |
|
||||
Rancher External DNS service for PowerDNS
|
||||
version: v0.5.0-rancher1
|
||||
category: External DNS
|
@ -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
|
||||
|
||||
|
@ -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
|
||||
|
@ -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"
|
||||
|
@ -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"
|
||||
|
@ -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"
|
||||
|
@ -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"
|
||||
|
@ -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
|
||||
|
@ -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"
|
||||
|
@ -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"
|
||||
|
@ -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"
|
||||
|
@ -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
|
||||
|
@ -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"
|
||||
|
@ -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"
|
||||
|
@ -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
|
||||
|
@ -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"
|
||||
|
@ -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"
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
Loading…
x
Reference in New Issue
Block a user