4.0 KiB
Local Docker Management
Traefik
- Reverzní proxy
- Validní https pro lokální vývoj (wildcard certifikát s vlastním CA)
- Přizpůsobitelné nastavení nuceného přesměrování HTTP na HTTPS
- Připojení dalších (vlastních) služeb pomocí Traefik labels
- Dashboard pro monitorování a správu routování
Portainer
- Webové rozhraní pro správu kontejnerů, obrazů, sítí i volumů
- Podpora Docker, Compose, Swarm i Kubernetes
- Persistentní úložiště dat (složka
portainer)
Požadavky
- Docker & Docker Compose
Instalace
1. Konfigurace prostředí
Při prvním spuštění se automaticky spustí průvodce konfigurací, který vytvoří soubor .env s potřebnými nastaveními.
Budete dotázáni na:
- Development domain name - doména pro lokální vývoj (výchozí:
dev.linuxak.com) - External Docker network name - název externí sítě pro kontejnery (výchozí:
traefiknet) - HTTPS redirect - vynucené přesměrování HTTP na HTTPS (výchozí:
true)
Tip: Stačí mačkat Enter pro použití výchozích hodnot, které jsou plně funkční.
Přednastavenou doménu
dev.linuxak.commůžete ponechat - směřuje na IP127.0.0.1(váš lokální počítač).
2. Certifikáty pro HTTPS
Traefik používá námi integrovaný vlastní certifikát pro HTTPS komunikaci. Pro správné
fungování je potřeba importovat traefik/certs/rootCA.pem do důvěryhodných certifikátů vašeho operačního systému.
Integrovaný certifikát je platný pro:
dev.linuxak.coma všechny subdomény (*.dev.linuxak.com)localhost- IP adresu
127.0.0.1 - Platnost: do 27. února 2036
Poznámka: Pokud změníte
DEV_URLna jinou doménu než výše uvedené, bude potřeba dodat vlastní certifikát pro HTTPS komunikaci.
2.1 Import CA do systému
Linux (CentOS/RHEL/Fedora)
sudo cp traefik/certs/rootCA.pem /etc/pki/ca-trust/source/anchors/linuxak-dev-ca.crt
sudo update-ca-trust
Linux (Ubuntu/Debian)
sudo cp traefik/certs/rootCA.pem /usr/local/share/ca-certificates/linuxak-dev-ca.crt
sudo update-ca-certificates
MacOS
sudo security add-trusted-cert -d -r trustRoot -k /Library/Keychains/System.keychain traefik/certs/rootCA.pem
Windows (PowerShell jako Admin)
Import-Certificate -FilePath "traefik/certs/rootCA.pem" -CertStoreLocation Cert:\LocalMachine\Root
3. Spuštění
./run up # Spustit stack (při prvním spuštění se spustí průvodce konfigurací)
./run restart # Restartovat stack
./run down # Zastavit stack
Při prvním spuštění ./run up budete provedeni konfigurací - stačí postupovat podle pokynů na obrazovce.
Přístup ke službám
| Služba | URL |
|---|---|
| Traefik Dashboard | https://traefik.dev.linuxak.com |
| Portainer | https://portainer.dev.linuxak.com |
Struktura
Stack/
├── docker-compose.yml # Definice služeb
├── run # Skript pro správu
├── .env # Konfigurace prostředí (automaticky vytvořen při prvním spuštění)
├── traefik/ # Traefik konfigurace, certifikáty a logy
└── portainer/ # Portainer data
Připojení vaší služby do Traefiku
Do vašeho docker-compose.yml přidejte Traefik labels:
<VASE_URL> - nahraďte skutečnou doménou své služby
<VAS_PORT> - nahraďte skutečným portem své služby
<VASE_EXTERNI_SIT> - nahraďte skutečným názvem své externí sítě
Příklad pro službu s názvem myapp:
labels:
- "traefik.enable=true"
- "traefik.http.routers.myapp.rule=Host(`myapp.<VASE_URL>`)"
- "traefik.http.routers.myapp.entrypoints=websecure"
- "traefik.http.routers.myapp.tls=true"
- "traefik.http.services.myapp.loadbalancer.server.port=<VAS_PORT>"
networks:
- <VASE_EXTERNI_SIT>