- Langsung How To
Cara setup mautic di docker swarm, berikut caranya:
-
Dapetin Swarm node ID di spesifik node (di tempat aplikasi bakal di deploy),
export NODE_ID=$(docker info -f '{{.Swarm.NodeID}}')
-
Lanjutan yang di atas, ini biar Mautic bakal terus di deploy di node & volume yang sama (ini kasus kalau anda ga pakai NFS utk storage nya, sehingga volumenya kudu di pastiin di satu tempat),
docker node update --label-add mautic.mautic-data=true $NODE_ID
-
Buat file baru, beri nama mautic.yml
version: '3.3'
services:
mautic:
image: mautic/mautic:latest
networks:
- traefik-public
environment:
- MAUTIC_DB_HOST=xxx.xxx.xxx.xxx
- MAUTIC_DB_USER=user
- MAUTIC_DB_PASSWORD=password
- MAUTIC_DB_NAME=yourmautic
- MAUTIC_RUN_CRON_JOBS=true
- MAUTIC_TRUSTED_PROXIES=0.0.0.0/0
volumes:
- mautic-data:/var/www/html
deploy:
labels:
- traefik.enable=true
- traefik.docker.network=traefik-public
- traefik.constraint-label=traefik-public
- traefik.http.routers.mautic-http.rule=Host(`mautic.ipang.com`)
- traefik.http.routers.mautic-http.entrypoints=http
- traefik.http.routers.mautic-http.middlewares=https-redirect
- traefik.http.routers.mautic-https.rule=Host(`mautic.ipang.com`)
- traefik.http.routers.mautic-https.entrypoints=https
- traefik.http.routers.mautic-https.tls=true
- traefik.http.routers.mautic-https.tls.certresolver=le
- traefik.http.middlewares.secure-headers-mautic.headers.customresponseheaders.x-robots-tag=noindex, nofollow, nosnippet, noarchive, noimageindex, notranslate
- traefik.http.middlewares.secure-headers-mautic.headers.customresponseheaders.x-content-type-options=nosniff
- traefik.http.middlewares.secure-headers-mautic.headers.customresponseheaders.x-xss-protection= 1; mode=block
- traefik.http.routers.mautic-https.middlewares=secure-headers-mautic
- traefik.http.services.mautic.loadbalancer.server.port=80
placement:
constraints:
- node.role == worker
networks:
traefik-public:
external: true
volumes:
mautic-data:
- Deploy aplikasi
docker stack deploy -c mautic.yml mautic