Autocommit 2026-10-20 07:30

This commit is contained in:
Simon 2026-10-20 07:30:01 +02:00
parent 2df6e77988
commit bf315a3f87
3 changed files with 84 additions and 2 deletions

View File

@ -24,7 +24,7 @@ Internet → Cloudflare → Traefik (80/443) → container på nätverket backen
| `~/repo/Docker/secrets/` | Lösenord som filer, en per hemlighet (ej i git) |
| `~/repo/Docker/<tjänst>/` | Konfigfiler som ska versionshanteras |
| `/opt/docker_data/<tjänst>/` | Data (`${DIR_LOCAL}`), ej i git |
| `~/repo/Docker/traefik/` | Middlewares och TLS-inställningar |
| `~/repo/Docker/traefik/` | Middlewares och TLS-inställningar, se [[Traefik]] |
**Middleware-kedjor** – väljs per tjänst:

82
10-Projekt/Traefik.md Normal file
View File

@ -0,0 +1,82 @@
---
title: Traefik
created: 2026-10-20
status: aktiv
tags:
- projekt
---
# Traefik
> [!abstract] Översikt
> Traefik v3 är reverse proxy för allt på `zeuz`. Den tar emot trafik från Cloudflare, ordnar certifikat och skickar vidare till Docker-containrar eller andra maskiner i nätet. Se även [[Docker-stack]].
## Layout
```
Cloudflare → :443 (web-secure) → router (Host-regel) → middlewares → service
```
| Fil | Innehåll | Ändring kräver |
| --- | --- | --- |
| `~/repo/Docker/traefik.yml` | Statisk konfig: entrypoints, cert-resolvers, providers, loggning | Omstart av Traefik |
| `~/repo/Docker/traefik/` | Dynamisk konfig: middlewares, kedjor, TLS, fil-routes | Inget, läses in live |
| Docker-labels i compose | Routes för containrar | `docker compose up -d <tjänst>` |
| `/opt/docker_data/traefik/log/` | `info.log` och `access.log` | – |
**Två sätt att skapa en route:**
- **Docker-container** → labels på tjänsten (se [[Docker-stack#Lägga till en ny tjänst]]).
- **Något som inte är en container** (annan maskin, Bitwarden) → router + service i `traefik/static_config.yml`.
**Certifikat:**
- `milvert_dns` – Let's Encrypt via Cloudflare-DNS. Används för `*.milvert.com`. Tar ett par minuter för ett nytt namn.
- `peek` – HTTP-utmaning, för peekskog.se.
**Entrypoints:** `web` (80) och `web-secure` (443) för webben. Övriga (8086, 8883 m.fl.) är för InfluxDB och MQTT.
## Middlewares
Använd en färdig kedja (`traefik/middleware-chains.yml`) i stället för enskilda middlewares:
| Kedja | När |
| --- | --- |
| `chain-authelia` | Admin-gränssnitt utan egen bra inloggning |
| `chain-no-auth` | Tjänster med egen inloggning |
| `chain-local` | Bara från hemnätet |
| ingen | När kedjorna bryter något, t.ex. CORS eller rate limit (CouchDB) |
Nya middlewares läggs i `traefik/middleware.yml` och kombineras till kedjor i `middleware-chains.yml`.
## Lägga till en route till en annan maskin
I `traefik/static_config.yml`, under `http:`:
```yaml
routers:
minsak-router:
rule: "Host(`minsak.milvert.com`)"
service: minsak-service
middlewares:
- chain-authelia
entryPoints:
- web-secure
tls:
certResolver: milvert_dns
services:
minsak-service:
loadBalancer:
servers:
- url: "http://10.0.0.x:8080"
```
Sparar du filen läser Traefik in ändringen direkt. Ingen omstart behövs.
## Felsökning
- **Logg:** `docker exec traefik tail -f /log/info.log`
- **Cloudflare 525:** Traefik har inget certifikat för namnet än. Vänta några minuter.
- **`unrecognized name` vid test lokalt:** samma sak. `sniStrict` gör att Traefik vägrar namn som saknar certifikat.
- **Testa förbi Cloudflare:** `curl --resolve minsak.milvert.com:443:127.0.0.1 https://minsak.milvert.com/`

View File

@ -29,4 +29,4 @@ tags:
- [ ] Peka *Settings → Templates → Template folder location* till `90-Mallar`
- [ ] Peka *Settings → Daily notes → New file location* till `20-Dagbok`
- [ ] kolla upp https://www.facebook.com/share/p/1FLHDChD4U/ ,hur denna hämtar vk
- [ ] kolla upp https://www.facebook.com/share/p/1FLHDChD4U/ ,hur denna hämtar vklass