This commit is contained in:
2023-07-04 18:59:28 +02:00
parent 482365da7b
commit 34f7e64f6a
9 changed files with 794 additions and 4 deletions

View File

@ -0,0 +1,23 @@
http:
routers:
traefik:
rule: Host(`dashboard.tips-of-mine.local`)
entryPoints:
- websecure
service: api@internal
middlewares:
- dashboardauth
tls:
certResolver: letsencrypt
traefik-http-redirect:
rule: Host(`dashboard.tips-of-mine.local`)
entryPoints:
- web
service: api@internal
middlewares:
- "redirect-to-https"
middlewares:
dashboardauth:
basicAuth:
users:
- "admin:$2y$10$GXOzS6L1s3gwQb8zO90LKOGuvZfurIXCBgJjZ5ib9/p5l3cy1sid6"

View File

@ -0,0 +1,50 @@
http:
middlewares:
redirect-to-https:
redirectScheme:
scheme: https
permanent: true
hsts-minimal:
headers:
stsSeconds: 31536000
stsIncludeSubdomains: false
stsPreload: false
forceSTSHeader: true
hsts-standard:
headers:
stsSeconds: 31536000
stsIncludeSubdomains: true
stsPreload: false
forceSTSHeader: true
hsts-full:
headers:
stsSeconds: 31536000
stsIncludeSubdomains: true
stsPreload: true
forceSTSHeader: true
# Redirect non-www URLs to their www equivalent
# Use with traefik.http.routers.myRouter.middlewares: "redirect-non-www-to-www@file"
# Source: https://www.benjaminrancourt.ca/how-to-redirect-from-non-www-to-www-with-traefik/
redirect-non-www-to-www:
# Redirect a request from an url to another with regex matching and replacement
redirectregex:
# Apply a permanent redirection (HTTP 301)
permanent: true
# The regular expression to match and capture elements from the request URL
regex: "^https?://(?:www\\.)?(.+)"
# How to modify the URL to have the new target URL
replacement: "https://www.${1}"
# Redirect www URLs to their non-www equivalent
# Use with traefik.http.routers.myRouter.middlewares: "redirect-www-to-non-www@file"
# Source: https://www.benjaminrancourt.ca/how-to-redirect-from-non-www-to-www-with-traefik/
redirect-www-to-non-www:
# Redirect a request from an url to another with regex matching and replacement
redirectregex:
# Apply a permanent redirection (HTTP 301)
permanent: true
# The regular expression to match and capture elements from the request URL
regex: "^https?://www\\.(.+)"
# How to modify the URL to have the new target URL
replacement: "https://${1}"

6
configs/dynamic/tls.yml Normal file
View File

@ -0,0 +1,6 @@
tls:
options:
default:
minVersion: VersionTLS12
mintls13:
minVersion: VersionTLS13

53
configs/traefik.yml Normal file
View File

@ -0,0 +1,53 @@
## static configuration
global:
# Send anonymous usage data
sendAnonymousUsage: false
# checkNewVersion: true
entryPoints:
web:
address: ":80"
# redirections:
# entryPoint:
# to: "websecure"
# scheme: "https"
websecure:
address: ":443"
# Access logs
# accessLog: fields:
# headers:
# names:
# User-Agent: keep
providers:
docker:
endpoint: "unix:///var/run/docker.sock"
exposedByDefault: false
file:
directory: /etc/traefik/dynamic
watch: true
certificatesResolvers:
letsencrypt:
acme:
tlschallenge: true
httpchallenge:
entrypoint: web
email: admin@tips-of-mine.fr
storage: /etc/traefik/acme/acme.json
api:
# insecure = false
dashboard: true
log:
level: DEBUG
filepath: "/var/log/traefik.log"
# default: "common"
accesslog:
filepath: "/var/log/access.log"
bufferingSize: 100
# format: common