feat: various small fixes to the traefik config
This commit is contained in:
parent
f9250743b5
commit
68aac107da
3 changed files with 35 additions and 23 deletions
|
|
@ -12,13 +12,23 @@
|
||||||
# traefik config
|
# traefik config
|
||||||
- name: "traefik config"
|
- name: "traefik config"
|
||||||
ansible.builtin.template:
|
ansible.builtin.template:
|
||||||
src: "templates/traefik/config.yml.j2"
|
src: "templates/traefik/traefik.yml.j2"
|
||||||
dest: "/mnt/traefik/traefik.yml"
|
dest: "/mnt/traefik/traefik.yml"
|
||||||
owner: "root"
|
owner: "root"
|
||||||
group: "root"
|
group: "root"
|
||||||
mode: "0640"
|
mode: "0640"
|
||||||
notify: "restart traefik"
|
notify: "restart traefik"
|
||||||
|
|
||||||
|
# traefik http routes
|
||||||
|
- name: "traefik https routes"
|
||||||
|
ansible.builtin.template:
|
||||||
|
src: "templates/traefik/http.yml.j2"
|
||||||
|
dest: "/mnt/traefik/http.yml"
|
||||||
|
owner: "root"
|
||||||
|
group: "root"
|
||||||
|
mode: "0640"
|
||||||
|
notify: "restart traefik"
|
||||||
|
|
||||||
# transip apikey
|
# transip apikey
|
||||||
- name: "traefik - transip api"
|
- name: "traefik - transip api"
|
||||||
ansible.builtin.copy:
|
ansible.builtin.copy:
|
||||||
|
|
|
||||||
18
templates/traefik/http.yml.j2
Normal file
18
templates/traefik/http.yml.j2
Normal file
|
|
@ -0,0 +1,18 @@
|
||||||
|
http:
|
||||||
|
routers:
|
||||||
|
{% for item in traefik_routes %}
|
||||||
|
{{ item.service }}:
|
||||||
|
rule: "Host(`{{ item.name }}`)"
|
||||||
|
entryPoints:
|
||||||
|
- websecure
|
||||||
|
service: {{ item.service }}-svc
|
||||||
|
tls:
|
||||||
|
certResolver: transip
|
||||||
|
{% endfor %}
|
||||||
|
services:
|
||||||
|
{% for item in traefik_routes %}
|
||||||
|
{{ item.service }}-svc:
|
||||||
|
loadBalancer:
|
||||||
|
servers:
|
||||||
|
- url: "{{ item.proto }}://{{ item.host }}:{{ item.port }}"
|
||||||
|
{% endfor %}
|
||||||
|
|
@ -16,7 +16,6 @@ entryPoints:
|
||||||
readTimeout: 0
|
readTimeout: 0
|
||||||
writeTimeout: 0
|
writeTimeout: 0
|
||||||
idleTimeout: 0
|
idleTimeout: 0
|
||||||
|
|
||||||
certificatesResolvers:
|
certificatesResolvers:
|
||||||
transip:
|
transip:
|
||||||
acme:
|
acme:
|
||||||
|
|
@ -24,28 +23,13 @@ certificatesResolvers:
|
||||||
provider: "transip"
|
provider: "transip"
|
||||||
email: "{{ traefik_letsencrypt_email }}"
|
email: "{{ traefik_letsencrypt_email }}"
|
||||||
storage: "/acme.json"
|
storage: "/acme.json"
|
||||||
caServer: "https://acme-v02.api.letsencrypt.org/directory"
|
|
||||||
|
{% if traefik_routes | selectattr('proto', 'equalto', 'https') | list | length > 0 %}
|
||||||
|
serversTransport:
|
||||||
|
insecureSkipVerify: true
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
providers:
|
providers:
|
||||||
file:
|
file:
|
||||||
filename: /traefik.yml
|
filename: /http.yml
|
||||||
watch: true
|
watch: true
|
||||||
|
|
||||||
http:
|
|
||||||
routers:
|
|
||||||
{% for item in traefik_routes %}
|
|
||||||
{{ item.service }}:
|
|
||||||
rule: "Host(`{{ item.name }}`)"
|
|
||||||
entryPoints:
|
|
||||||
- websecure
|
|
||||||
service: {{ item.service }}-svc
|
|
||||||
tls:
|
|
||||||
certResolver: transip
|
|
||||||
{% endfor %}
|
|
||||||
services:
|
|
||||||
{% for item in traefik_routes %}
|
|
||||||
{{ item.service }}-svc:
|
|
||||||
loadBalancer:
|
|
||||||
servers:
|
|
||||||
- url: "{{ item.proto }}://{{ item.host }}:{{ item.port }}"
|
|
||||||
{% endfor %}
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue