added new docker settings for traefik
This commit is contained in:
@@ -85,13 +85,14 @@
|
||||
mode: '0600'
|
||||
when: env_dict | length > 0
|
||||
|
||||
# 6. Sync Dateien
|
||||
# 6. Sync Dateien (mit Change-Detection für Config-Apps)
|
||||
- name: "Synchronisiere App-Dateien (Push)"
|
||||
copy:
|
||||
src: "{{ source_dir }}/"
|
||||
dest: "{{ target_dir }}/"
|
||||
mode: '0644'
|
||||
directory_mode: '0755'
|
||||
register: file_sync_result
|
||||
|
||||
# 7. Docker Compose Deployment
|
||||
- name: "Deploy {{ app_item.name }} mit Docker Compose"
|
||||
@@ -104,3 +105,14 @@
|
||||
environment:
|
||||
PATH: "/usr/bin:/usr/local/bin:/snap/bin:{{ ansible_env.PATH }}"
|
||||
register: compose_result
|
||||
|
||||
# 8. Restart Container wenn Config-Dateien geändert wurden
|
||||
# (Wichtig für Apps wie Traefik Edge, die Config-Dateien aus dem Dateisystem laden)
|
||||
- name: "Restart {{ app_item.name }} Container wenn Config-Dateien geändert wurden"
|
||||
shell: "cd {{ target_dir }} && docker compose restart"
|
||||
when:
|
||||
- file_sync_result.changed | default(false)
|
||||
- app_item.restart_on_config_change | default(true)
|
||||
environment:
|
||||
PATH: "/usr/bin:/usr/local/bin:/snap/bin:{{ ansible_env.PATH }}"
|
||||
ignore_errors: true
|
||||
|
||||
@@ -1,30 +0,0 @@
|
||||
http:
|
||||
middlewares:
|
||||
internal-ipwhitelist:
|
||||
ipWhiteList:
|
||||
sourceRange:
|
||||
- "10.100.0.0/16" # Internes Netzwerk (VLAN 30, 40, 90, etc.)
|
||||
- "10.200.0.0/24" # VPN-Netzwerk
|
||||
# Nur VPN-Clients dürfen auf *.apps.internal.* zugreifen
|
||||
|
||||
routers:
|
||||
# Separate Route für interne Apps mit TLS Termination (nicht Passthrough)
|
||||
# Damit können wir IP-Whitelist anwenden
|
||||
internal-apps:
|
||||
rule: "HostRegexp(`^.+\\.apps\\.internal\\.k3s\\.stabify\\.de$`)"
|
||||
entryPoints:
|
||||
- websecure
|
||||
service: k3s-cluster-internal
|
||||
middlewares:
|
||||
- internal-ipwhitelist
|
||||
tls:
|
||||
certResolver: le
|
||||
domains:
|
||||
- main: "*.apps.internal.k3s.stabify.de"
|
||||
|
||||
services:
|
||||
k3s-cluster-internal:
|
||||
loadBalancer:
|
||||
servers:
|
||||
- url: "https://10.100.40.6:443"
|
||||
passHostHeader: true
|
||||
@@ -1,8 +1,8 @@
|
||||
tcp:
|
||||
routers:
|
||||
# Öffentliche k3s Domains (NICHT *.apps.internal.*)
|
||||
# Alle k3s Domains (inkl. *.apps.internal.*) über TLS Passthrough
|
||||
k3s-passthrough:
|
||||
rule: "HostSNIRegexp(`^[^.]+\\.(apps|sys)\\.k3s\\.stabify\\.de$`) && !HostSNIRegexp(`^.+\\.apps\\.internal\\.k3s\\.stabify\\.de$`)"
|
||||
rule: "HostSNIRegexp(`^.+\\.k3s\\.stabify\\.de$`)"
|
||||
entryPoints:
|
||||
- websecure
|
||||
service: k3s-cluster
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
apps:
|
||||
- name: traefik-edge
|
||||
has_secrets: true # Benötigt Cloudflare Token
|
||||
restart_on_config_change: true # Container neu starten wenn Config-Dateien geändert wurden
|
||||
Reference in New Issue
Block a user