Lanjutan dari Part 2 - Deploy Traefik sebagai Reverse Proxy di Docker Swarm
Part 3, Setup Server Block/Virtual Host di Traefik
Saya ga tahu kata-kata yang tepat buat sub judulnya, mungkin buat yang biasa pake Apache atau Nginx, terbiasa dengar Server dan Virtual Host.
Yang akan kita deploy adalah aplikasi docker swarm visualizer dan containous/whoami
Deploy Docker Swarm Visualizer
-
Pertama tambahkan domain di /etc/hosts file, langsung dua saja ya, buat visualizer (visualizer.local) dan whoami (whoami.local)
Tambahkan Domain di file /etc/hosts
-
Buat docker-compose-visualizer.yml
version: "3.4"
services:
visualizer:
image: dockersamples/visualizer
#allow to access docker socket
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
deploy:
placement:
constraints:
#only run traefik at manager
- node.role == manager
labels:
- traefik.enable=true
- traefik.docker.network=traefik
- traefik.http.routers.visualizer-http.rule=Host(`visualizer.local`)
- traefik.http.middlewares.admin-auth.basicauth.users=sahamaneh:$$2y$$05$$i8WQb772W13f0jP.1tTDteaivolUBDjf1YTbjzk0JD33ktIQjsDXe
- traefik.http.routers.visualizer-http.middlewares=admin-auth
- traefik.http.routers.visualizer-http.entrypoints=web
- traefik.http.services.visualizer.loadbalancer.server.port=8080
networks:
- traefik
networks:
traefik:
external: true
- Deploy visualizer stack
docker stack deploy -c docker-compose-visualizer.yml visualizer
- Buka browser, tulis domain sesuai di file /etc/hosts (di sini saya gunakan visualizer.local)
Visualizer Docker Swarm
Deploy Stack Whoami
- Buat docker-compose-whoami.yml
version: "3.4"
services:
whoami:
image: containous/whoami
deploy:
placement:
constraints:
- node.role == worker
labels:
- traefik.enable=true
- traefik.docker.network=traefik
- traefik.http.routers.whoami-http.rule=Host(`whoami.local`)
- traefik.http.routers.whoami-http.entrypoints=web
- traefik.http.services.whoami.loadbalancer.server.port=80
networks:
- traefik
networks:
traefik:
external: true
- Deploy stack whoami
docker stack deploy -c docker-compose-whoami.yml whoami
- Kita cek di browser, ketikan whoami.local di address bar

Whoami Docker Swarm

Whoam di Visualizer
Test Scaling Whoami
- Kita coba scaling whoami, nanti kita bisa cek apakah benar sudah ter-scaling atau belum di visualizer.local
docker service scale whoami_whoami=3

Setelah Scaling Semua Container Whoami Running
- Cek di browser, ketik whoami.local lalu refresh beberapa kali