Autocommit 2026-10-20 07:30
This commit is contained in:
parent
2df6e77988
commit
bf315a3f87
|
|
@ -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/secrets/` | Lösenord som filer, en per hemlighet (ej i git) |
|
||||||
| `~/repo/Docker/<tjänst>/` | Konfigfiler som ska versionshanteras |
|
| `~/repo/Docker/<tjänst>/` | Konfigfiler som ska versionshanteras |
|
||||||
| `/opt/docker_data/<tjänst>/` | Data (`${DIR_LOCAL}`), ej i git |
|
| `/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:
|
**Middleware-kedjor** – väljs per tjänst:
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -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/`
|
||||||
2
Home.md
2
Home.md
|
|
@ -29,4 +29,4 @@ tags:
|
||||||
|
|
||||||
- [ ] Peka *Settings → Templates → Template folder location* till `90-Mallar`
|
- [ ] Peka *Settings → Templates → Template folder location* till `90-Mallar`
|
||||||
- [ ] Peka *Settings → Daily notes → New file location* till `20-Dagbok`
|
- [ ] 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
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue