
Halo, kalau kamu merasa tulisan saya ngebantu kamu, kamu bisa ucapkan terima kasih lewat saweria.
Hello, if you find this article helpful, you can express your gratitude through saweria.
How To
Deploy Traefik
Untuk docker-compose.yml nya saya dapat dari traefik-best-practice nya bluepuma
- Buat
docker-compose.ymlfile
name: traefik
services:
traefik:
image: traefik:v3.0
ports:
- 80:80
- 443:443/tcp
- 443:443/udp
networks:
- proxy
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- letsencrypt:/letsencrypt
#- /var/log:/var/log
command:
- --api.dashboard=true
- --log.level=INFO
- --accesslog=true
- --providers.docker.network=proxy
- --providers.docker.exposedByDefault=false
- --entrypoints.web.address=:80
- --entrypoints.web.http.redirections.entrypoint.to=websecure
- --entryPoints.web.http.redirections.entrypoint.scheme=https
- --entrypoints.websecure.address=:443
#try http3/quic
- --entryPoints.websecure.http3
# remove next line when using Traefik v2
- --entrypoints.websecure.asDefault=true
- --entrypoints.websecure.http.tls.certresolver=myresolver
- --certificatesresolvers.myresolver.acme.email=youremail@yourdomain.com
- --certificatesresolvers.myresolver.acme.tlschallenge=true
- --certificatesresolvers.myresolver.acme.storage=/letsencrypt/acme.json
labels:
- traefik.enable=true
- traefik.http.routers.mydashboard.rule=Host(`traefik.yourdomain.com`)
- traefik.http.routers.mydashboard.service=api@internal
- traefik.http.middlewares.secure-headers.headers.customresponseheaders.x-robots-tag=noindex, nofollow, nosnippet, noarchive, noimageindex, notranslate
- traefik.http.middlewares.secure-headers.headers.customresponseheaders.x-content-type-options=nosniff
- traefik.http.middlewares.secure-headers.headers.customresponseheaders.x-xss-protection= 1; mode=block
- traefik.http.middlewares.enable-compress.compress=true
- traefik.http.routers.mydashboard.middlewares=myauth, secure-headers, enable-compress
#username: admin, pass: test
- traefik.http.middlewares.myauth.basicauth.users=admin:$$apr1$$H6uskkkW$$IgXLP6ewTrSuBkTrqE8wj/
proxy:
name: proxy
volumes:
letsencrypt:
name: letsencrypt
- Jalankan
docker-compose up -d

Dashboard Ga Ada Perubahan

Content Pun, Ga Ada Perubahan
Untuk melihat perubahan-perubahan Traefik v3, bisa di cek di Traefik Docs - Migration Guide: From v2 to v3
Deploy App
Kita akan coba deploy image dari mkdocs dari tutorial saya sebelumnya
- Buat
docs.yml
name: docs
services:
docs:
image: ghcr.io/ipang777/mkdocs-docker-production:master
networks:
- proxy
labels:
- traefik.enable=true
- traefik.http.routers.mydocs.rule=Host(`docs.yourdomain.com`)
- traefik.http.services.mydocs.loadbalancer.server.port=80
- traefik.http.routers.mydocs.middlewares=secure-headers, enable-compress
networks:
proxy:
external: true
- Jalankan
docker compose -f docs.yml up -d

HTTP3 Lebih Mudah
