mirror of
https://gitlab.sectorq.eu/home/docker-compose.git
synced 2025-12-14 10:24:53 +01:00
build
This commit is contained in:
@@ -1,348 +1,215 @@
|
||||
networks:
|
||||
clamav:
|
||||
driver: overlay
|
||||
|
||||
default:
|
||||
driver: overlay
|
||||
ipam:
|
||||
config:
|
||||
- subnet: 192.168.205.0/24
|
||||
driver: default
|
||||
|
||||
clamav:
|
||||
driver: overlay
|
||||
fts_attachments:
|
||||
driver: overlay
|
||||
internal: true
|
||||
|
||||
oletools:
|
||||
driver: overlay
|
||||
internal: true
|
||||
|
||||
radicale:
|
||||
driver: overlay
|
||||
|
||||
webmail:
|
||||
driver: overlay
|
||||
|
||||
services:
|
||||
|
||||
admin:
|
||||
dns:
|
||||
- 192.168.205.254
|
||||
env_file: stack.env
|
||||
image: ${DOCKER_REGISTRY:-}ghcr.io/mailu/${DOCKER_PREFIX:-}admin:${MAILU_VERSION:-2024.06}
|
||||
env_file: stack.env
|
||||
depends_on:
|
||||
- redis
|
||||
- resolver
|
||||
dns:
|
||||
- 192.168.205.254
|
||||
volumes:
|
||||
- mailu3_data:/data
|
||||
- mailu3_dkim:/dkim
|
||||
- /share/docker_data/mailu3/data:/data
|
||||
- /share/docker_data/mailu3/dkim:/dkim
|
||||
deploy:
|
||||
labels:
|
||||
wud.watch: 'true'
|
||||
wud.watch.digest: 'true'
|
||||
replicas: 1
|
||||
restart_policy:
|
||||
condition: any
|
||||
placement:
|
||||
constraints:
|
||||
- node.role == manager
|
||||
constraints: [node.role == manager]
|
||||
|
||||
antispam:
|
||||
image: ${DOCKER_REGISTRY:-}ghcr.io/mailu/${DOCKER_PREFIX:-}rspamd:${MAILU_VERSION:-2024.06}
|
||||
env_file: stack.env
|
||||
depends_on:
|
||||
- front
|
||||
- redis
|
||||
- oletools
|
||||
- antivirus
|
||||
- resolver
|
||||
dns:
|
||||
- 192.168.205.254
|
||||
env_file: stack.env
|
||||
hostname: antispam
|
||||
image: ${DOCKER_REGISTRY:-}ghcr.io/mailu/${DOCKER_PREFIX:-}rspamd:${MAILU_VERSION:-2024.06}
|
||||
networks:
|
||||
- default
|
||||
- oletools
|
||||
- clamav
|
||||
volumes:
|
||||
- filter:/var/lib/rspamd
|
||||
- rspamd:/overrides:ro
|
||||
- /share/docker_data/mailu3/filter:/var/lib/rspamd
|
||||
- /share/docker_data/mailu3/overrides/rspamd:/overrides:ro
|
||||
deploy:
|
||||
labels:
|
||||
wud.watch: 'true'
|
||||
wud.watch.digest: 'true'
|
||||
replicas: 1
|
||||
restart_policy:
|
||||
condition: any
|
||||
placement:
|
||||
constraints:
|
||||
- node.role == manager
|
||||
constraints: [node.role == manager]
|
||||
|
||||
antivirus:
|
||||
healthcheck:
|
||||
interval: 10s
|
||||
retries: 3
|
||||
start_period: 10s
|
||||
test: ["CMD-SHELL", "kill -0 `cat /tmp/clamd.pid` && kill -0 `cat /tmp/freshclam.pid`"]
|
||||
timeout: 5s
|
||||
image: ${DOCKER_REGISTRY:-}clamav/clamav-debian:1.2.0-6
|
||||
networks:
|
||||
- clamav
|
||||
volumes:
|
||||
- clamav:/var/lib/clamav
|
||||
- /share/docker_data/mailu3/filter/clamav:/var/lib/clamav
|
||||
deploy:
|
||||
labels:
|
||||
wud.watch: 'true'
|
||||
wud.watch.digest: 'true'
|
||||
replicas: 1
|
||||
restart_policy:
|
||||
condition: any
|
||||
placement:
|
||||
constraints:
|
||||
- node.role == manager
|
||||
constraints: [node.role == manager]
|
||||
|
||||
fetchmail:
|
||||
dns:
|
||||
- 192.168.205.254
|
||||
env_file: stack.env
|
||||
image: ${DOCKER_REGISTRY:-}ghcr.io/mailu/${DOCKER_PREFIX:-}fetchmail:${MAILU_VERSION:-2024.06}
|
||||
env_file: stack.env
|
||||
depends_on:
|
||||
- admin
|
||||
- smtp
|
||||
- imap
|
||||
- resolver
|
||||
dns:
|
||||
- 192.168.205.254
|
||||
volumes:
|
||||
- fetchmail:/data
|
||||
- /share/docker_data/mailu3/data/fetchmail:/data
|
||||
deploy:
|
||||
labels:
|
||||
wud.watch: 'true'
|
||||
wud.watch.digest: 'true'
|
||||
replicas: 1
|
||||
restart_policy:
|
||||
condition: any
|
||||
placement:
|
||||
constraints:
|
||||
- node.role == manager
|
||||
constraints: [node.role == manager]
|
||||
|
||||
front:
|
||||
image: ${DOCKER_REGISTRY:-}ghcr.io/mailu/${DOCKER_PREFIX:-}nginx:${MAILU_VERSION:-2024.06}
|
||||
env_file: stack.env
|
||||
dns:
|
||||
- 192.168.205.254
|
||||
env_file: stack.env
|
||||
logging:
|
||||
driver: loki
|
||||
options:
|
||||
loki-url: "http://192.168.77.101:3100/loki/api/v1/push"
|
||||
image: ${DOCKER_REGISTRY:-}ghcr.io/mailu/${DOCKER_PREFIX:-}nginx:${MAILU_VERSION:-2024.06}
|
||||
networks:
|
||||
- default
|
||||
- webmail
|
||||
- radicale
|
||||
ports:
|
||||
- target: 80
|
||||
published: 8880
|
||||
protocol: tcp
|
||||
mode: ingress
|
||||
- target: 443
|
||||
published: 8443
|
||||
protocol: tcp
|
||||
mode: ingress
|
||||
- target: 25
|
||||
published: 25
|
||||
protocol: tcp
|
||||
mode: ingress
|
||||
- target: 465
|
||||
published: 465
|
||||
protocol: tcp
|
||||
mode: ingress
|
||||
- target: 587
|
||||
published: 587
|
||||
protocol: tcp
|
||||
mode: ingress
|
||||
- target: 110
|
||||
published: 110
|
||||
protocol: tcp
|
||||
mode: ingress
|
||||
- target: 995
|
||||
published: 995
|
||||
protocol: tcp
|
||||
mode: ingress
|
||||
- target: 143
|
||||
published: 143
|
||||
protocol: tcp
|
||||
mode: ingress
|
||||
- target: 993
|
||||
published: 993
|
||||
protocol: tcp
|
||||
mode: ingress
|
||||
- target: 4190
|
||||
published: 4190
|
||||
protocol: tcp
|
||||
mode: ingress
|
||||
- "8880:80"
|
||||
- "8443:443"
|
||||
- "25:25"
|
||||
- "465:465"
|
||||
- "587:587"
|
||||
- "110:110"
|
||||
- "995:995"
|
||||
- "143:143"
|
||||
- "993:993"
|
||||
- "4190:4190"
|
||||
volumes:
|
||||
- certs:/certs
|
||||
- nginx:/overrides:ro
|
||||
- /share/docker_data/mailu3/certs:/certs
|
||||
- /share/docker_data/mailu3/overrides/nginx:/overrides:ro
|
||||
deploy:
|
||||
labels:
|
||||
wud.watch: 'true'
|
||||
wud.watch.digest: 'true'
|
||||
homepage.container: mailu3-front-1
|
||||
homepage.description: eMail server
|
||||
homepage.group: Utilities
|
||||
homepage.href: https://mail.sectorq.eu
|
||||
homepage.icon: ${APPNAME}.png
|
||||
homepage.name: Mailu
|
||||
homepage.server: my-docker-swarm
|
||||
homepage.weight: '1'
|
||||
replicas: 1
|
||||
restart_policy:
|
||||
condition: any
|
||||
placement:
|
||||
constraints:
|
||||
- node.role == manager
|
||||
constraints: [node.role == manager]
|
||||
|
||||
fts_attachments:
|
||||
dns:
|
||||
- 192.168.205.254
|
||||
healthcheck:
|
||||
interval: 10s
|
||||
retries: 3
|
||||
start_period: 10s
|
||||
test: ["CMD-SHELL", "wget -nv -t1 -O /dev/null http://127.0.0.1:9998/tika || exit 1"]
|
||||
timeout: 5s
|
||||
hostname: tika
|
||||
image: ${DOCKER_REGISTRY:-}apache/tika:2.9.2.1-full
|
||||
networks:
|
||||
- fts_attachments
|
||||
deploy:
|
||||
labels:
|
||||
wud.watch: 'true'
|
||||
wud.watch.digest: 'true'
|
||||
replicas: 1
|
||||
restart_policy:
|
||||
condition: any
|
||||
placement:
|
||||
constraints:
|
||||
- node.role == manager
|
||||
constraints: [node.role == manager]
|
||||
|
||||
imap:
|
||||
image: ${DOCKER_REGISTRY:-}ghcr.io/mailu/${DOCKER_PREFIX:-}dovecot:${MAILU_VERSION:-2024.06}
|
||||
env_file: stack.env
|
||||
dns:
|
||||
- 192.168.205.254
|
||||
env_file: stack.env
|
||||
image: ${DOCKER_REGISTRY:-}ghcr.io/mailu/${DOCKER_PREFIX:-}dovecot:${MAILU_VERSION:-2024.06}
|
||||
networks:
|
||||
- default
|
||||
- fts_attachments
|
||||
volumes:
|
||||
- imap:/mail
|
||||
- dovecot:/overrides:ro
|
||||
- /share/docker_data/mailu3/mail:/mail
|
||||
- /share/docker_data/mailu3/overrides/dovecot:/overrides:ro
|
||||
deploy:
|
||||
labels:
|
||||
wud.watch: 'true'
|
||||
wud.watch.digest: 'true'
|
||||
replicas: 1
|
||||
restart_policy:
|
||||
condition: any
|
||||
placement:
|
||||
constraints:
|
||||
- node.role == manager
|
||||
constraints: [node.role == manager]
|
||||
|
||||
oletools:
|
||||
dns:
|
||||
- 192.168.205.254
|
||||
hostname: oletools
|
||||
image: ${DOCKER_REGISTRY:-}ghcr.io/mailu/${DOCKER_PREFIX:-}oletools:${MAILU_VERSION:-2024.06}
|
||||
networks:
|
||||
- oletools
|
||||
deploy:
|
||||
labels:
|
||||
wud.watch: 'true'
|
||||
wud.watch.digest: 'true'
|
||||
replicas: 1
|
||||
restart_policy:
|
||||
condition: any
|
||||
placement:
|
||||
constraints:
|
||||
- node.role == manager
|
||||
constraints: [node.role == manager]
|
||||
|
||||
redis:
|
||||
dns:
|
||||
- 192.168.205.254
|
||||
image: ${DOCKER_REGISTRY:-}redis:alpine
|
||||
volumes:
|
||||
- redis:/data
|
||||
- /share/docker_data/mailu3/redis:/data
|
||||
deploy:
|
||||
labels:
|
||||
wud.watch: 'true'
|
||||
wud.watch.digest: 'true'
|
||||
replicas: 1
|
||||
restart_policy:
|
||||
condition: any
|
||||
placement:
|
||||
constraints:
|
||||
- node.role == manager
|
||||
constraints: [node.role == manager]
|
||||
|
||||
resolver:
|
||||
env_file: stack.env
|
||||
image: ${DOCKER_REGISTRY:-}ghcr.io/mailu/${DOCKER_PREFIX:-}unbound:${MAILU_VERSION:-2024.06}
|
||||
env_file: stack.env
|
||||
networks:
|
||||
default:
|
||||
ipv4_address: 192.168.205.254
|
||||
- default
|
||||
deploy:
|
||||
labels:
|
||||
wud.watch: 'true'
|
||||
wud.watch.digest: 'true'
|
||||
replicas: 1
|
||||
restart_policy:
|
||||
condition: any
|
||||
placement:
|
||||
constraints:
|
||||
- node.role == manager
|
||||
constraints: [node.role == manager]
|
||||
|
||||
smtp:
|
||||
image: ${DOCKER_REGISTRY:-}ghcr.io/mailu/${DOCKER_PREFIX:-}postfix:${MAILU_VERSION:-2024.06}
|
||||
env_file: stack.env
|
||||
dns:
|
||||
- 192.168.205.254
|
||||
env_file: stack.env
|
||||
image: ${DOCKER_REGISTRY:-}ghcr.io/mailu/${DOCKER_PREFIX:-}postfix:${MAILU_VERSION:-2024.06}
|
||||
volumes:
|
||||
- mailqueue:/queue
|
||||
- postfix:/overrides:ro
|
||||
- /share/docker_data/mailu3/mailqueue:/queue
|
||||
- /share/docker_data/mailu3/overrides/postfix:/overrides:ro
|
||||
deploy:
|
||||
labels:
|
||||
wud.watch: 'true'
|
||||
wud.watch.digest: 'true'
|
||||
replicas: 1
|
||||
restart_policy:
|
||||
condition: any
|
||||
placement:
|
||||
constraints:
|
||||
- node.role == manager
|
||||
constraints: [node.role == manager]
|
||||
|
||||
webdav:
|
||||
image: ${DOCKER_REGISTRY:-}ghcr.io/mailu/${DOCKER_PREFIX:-}radicale:${MAILU_VERSION:-2024.06}
|
||||
networks:
|
||||
- radicale
|
||||
volumes:
|
||||
- webdav:/data
|
||||
- /share/docker_data/mailu3/dav:/data
|
||||
deploy:
|
||||
labels:
|
||||
wud.watch: 'true'
|
||||
wud.watch.digest: 'true'
|
||||
replicas: 1
|
||||
restart_policy:
|
||||
condition: any
|
||||
placement:
|
||||
constraints:
|
||||
- node.role == manager
|
||||
constraints: [node.role == manager]
|
||||
|
||||
webmail:
|
||||
env_file: stack.env
|
||||
image: ${DOCKER_REGISTRY:-}ghcr.io/mailu/${DOCKER_PREFIX:-}webmail:${MAILU_VERSION:-2024.06}
|
||||
env_file: stack.env
|
||||
networks:
|
||||
- webmail
|
||||
volumes:
|
||||
- webmail_data:/data
|
||||
- roundcube:/overrides:ro
|
||||
- /share/docker_data/mailu3/webmail:/data
|
||||
- /share/docker_data/mailu3/overrides/roundcube:/overrides:ro
|
||||
deploy:
|
||||
labels:
|
||||
wud.watch: 'true'
|
||||
wud.watch.digest: 'true'
|
||||
replicas: 1
|
||||
restart_policy:
|
||||
condition: any
|
||||
placement:
|
||||
constraints:
|
||||
- node.role == manager
|
||||
|
||||
volumes:
|
||||
webmail_data:
|
||||
driver: local
|
||||
roundcube:
|
||||
driver: local
|
||||
webdav:
|
||||
driver: local
|
||||
mailqueue:
|
||||
driver: local
|
||||
postfix:
|
||||
driver: local
|
||||
redis:
|
||||
driver: local
|
||||
oletools:
|
||||
driver: local
|
||||
clamav:
|
||||
driver: local
|
||||
fetchmail:
|
||||
driver: local
|
||||
filter:
|
||||
driver: local
|
||||
rspamd:
|
||||
driver: local
|
||||
certs:
|
||||
driver: local
|
||||
nginx:
|
||||
driver: local
|
||||
mailu3_data:
|
||||
driver: local
|
||||
mailu3_dkim:
|
||||
driver: local
|
||||
imap:
|
||||
driver: local
|
||||
dovecot:
|
||||
driver: local
|
||||
constraints: [node.role == manager]
|
||||
|
||||
Reference in New Issue
Block a user