248 lines
5.0 KiB
YAML
248 lines
5.0 KiB
YAML
|
|
networks:
|
|
|
|
mailu:
|
|
driver: bridge
|
|
name: mailu
|
|
ipam:
|
|
driver: default
|
|
config:
|
|
- subnet: 192.168.2.0/24
|
|
local:
|
|
internal: true
|
|
nextc:
|
|
internal: true
|
|
|
|
volumes:
|
|
|
|
redis-data:
|
|
front-overrides:
|
|
admin-data:
|
|
admin-dkim:
|
|
imap-mail:
|
|
smtp-queue:
|
|
antispam-filter:
|
|
webmail-data:
|
|
webmail-overrides:
|
|
|
|
ggrav-html:
|
|
nextc-html:
|
|
nextc-db:
|
|
onlyo-ds-log:
|
|
onlyo-ds-lib:
|
|
onlyo-ds-www:
|
|
onlyo-ds-pg:
|
|
onlyo-ds-rb:
|
|
onlyo-ds-rd:
|
|
onlyo-ds-font:
|
|
|
|
services:
|
|
|
|
resolver:
|
|
image: ${DORG?err}/mailu/unbound:${MAILU_VERSION:-1.9}
|
|
env_file: ${CONF?err}mailu.env
|
|
restart: always
|
|
networks:
|
|
mailu:
|
|
ipv4_address: 192.168.2.254
|
|
|
|
redis:
|
|
image: redis:alpine
|
|
restart: always
|
|
volumes:
|
|
- ${BIND?err}redis-data:/data
|
|
depends_on:
|
|
- resolver
|
|
networks:
|
|
- mailu
|
|
dns:
|
|
- 192.168.2.254
|
|
|
|
front:
|
|
image: ${DORG?err}/mailu/nginx:${MAILU_VERSION:-1.9}
|
|
restart: always
|
|
env_file: ${CONF?err}mailu.env
|
|
logging:
|
|
driver: journald
|
|
options:
|
|
tag: docker-front
|
|
ports:
|
|
- "80:80"
|
|
- "443:443"
|
|
- "25:25"
|
|
- "465:465"
|
|
- "143:143"
|
|
- "993:993"
|
|
- "587:587"
|
|
- "110:110"
|
|
- "995:995"
|
|
volumes:
|
|
- ${BIND?err}front-overrides:/overrides
|
|
- ${CERT?err}:/certs:ro
|
|
- ${CONF?err}mailu-front-overrides.conf:/overrides/overrides.conf:ro
|
|
depends_on:
|
|
- resolver
|
|
networks:
|
|
- mailu
|
|
- local
|
|
dns:
|
|
- 192.168.2.254
|
|
|
|
admin:
|
|
image: ${DORG?err}/mailu/admin:${MAILU_VERSION:-1.9}
|
|
restart: always
|
|
env_file:
|
|
- ${CONF?err}mailu.env
|
|
volumes:
|
|
- ${BIND?err}admin-data:/data
|
|
- ${BIND?err}admin-dkim:/dkim
|
|
depends_on:
|
|
- redis
|
|
- resolver
|
|
networks:
|
|
- mailu
|
|
dns:
|
|
- 192.168.2.254
|
|
|
|
imap:
|
|
image: ${DORG?err}/mailu/dovecot:${MAILU_VERSION:-1.9}
|
|
restart: always
|
|
env_file:
|
|
- ${CONF?err}mailu.env
|
|
volumes:
|
|
- ${BIND?err}imap-mail:/mail
|
|
depends_on:
|
|
- front
|
|
- resolver
|
|
networks:
|
|
- mailu
|
|
dns:
|
|
- 192.168.2.254
|
|
|
|
smtp:
|
|
image: ${DORG?err}/mailu/postfix:${MAILU_VERSION:-1.9}
|
|
restart: always
|
|
env_file: ${CONF?err}mailu.env
|
|
volumes:
|
|
- ${BIND?err}smtp-queue:/queue
|
|
depends_on:
|
|
- front
|
|
- resolver
|
|
networks:
|
|
- mailu
|
|
dns:
|
|
- 192.168.2.254
|
|
|
|
antispam:
|
|
image: ${DORG?err}/mailu/rspamd:${MAILU_VERSION:-1.9}
|
|
hostname: antispam
|
|
restart: always
|
|
env_file:
|
|
- ${CONF?err}mailu.env
|
|
volumes:
|
|
- ${BIND?err}antispam-filter:/var/lib/rspamd
|
|
depends_on:
|
|
- front
|
|
- resolver
|
|
networks:
|
|
- mailu
|
|
dns:
|
|
- 192.168.2.254
|
|
|
|
webmail:
|
|
image: ${DORG?err}/mailu/roundcube:${MAILU_VERSION:-1.9}
|
|
restart: always
|
|
env_file:
|
|
- ${CONF?err}mailu.env
|
|
volumes:
|
|
- ${BIND?err}webmail-data:/data
|
|
- ${BIND?err}webmail-overrides:/overrides
|
|
depends_on:
|
|
- front
|
|
- imap
|
|
- resolver
|
|
networks:
|
|
- mailu
|
|
dns:
|
|
- 192.168.2.254
|
|
|
|
ggrav:
|
|
image: andrew/getgrav:1.7.37.1
|
|
build:
|
|
context: https://cor.cherished.me/gt/andrew/build-grav.git
|
|
args:
|
|
- "GRAV_VERSION=1.7.37.1"
|
|
- "GRAV_SUBDIR=html/gv"
|
|
restart: always
|
|
volumes:
|
|
- ${BIND?err}ggrav-html:/var/www/html
|
|
env_file:
|
|
- ${CONF?err}ggrav.env
|
|
healthcheck:
|
|
test: ["CMD-SHELL","curl -fsS http://localhost/gv/"]
|
|
interval: 20s
|
|
timeout: 5s
|
|
retries: 5
|
|
networks:
|
|
- local
|
|
|
|
nextc:
|
|
image: andrew/nextcloud:24.0
|
|
build:
|
|
context: https://cor.cherished.me/gt/andrew/build-nextcloud.git
|
|
args:
|
|
- "VERSION=24.0"
|
|
- "PUID=1000"
|
|
restart: always
|
|
volumes:
|
|
- ${BIND?err}nextc-html:/var/www/html
|
|
- ${DATA?err}:/ncdata
|
|
- ${FMED?err}:/fmedia
|
|
env_file:
|
|
- ${CONF?err}nextc.env
|
|
depends_on:
|
|
- nextc-db
|
|
healthcheck:
|
|
test: ["CMD_SHELL","curl -fsS http://localhost"]
|
|
interval: 20s
|
|
timeout: 5s
|
|
retries: 5
|
|
networks:
|
|
- local
|
|
- nextc
|
|
|
|
nextc-db:
|
|
image: ${DORG?err}/mariadb:10.8
|
|
restart: always
|
|
volumes:
|
|
- ${BIND?err}nextc-db:/var/lib/mysql
|
|
env_file:
|
|
- ${CONF?err}nextc-db.env
|
|
healthcheck:
|
|
test: ["CMD-SHELL","/usr/bin/mysql -hlocalhost -p$$MARIADB_ROOT_PASSWORD --execute=\"use ncdb;\""]
|
|
interval: 20s
|
|
timeout: 5s
|
|
retries: 5
|
|
networks:
|
|
- nextc
|
|
|
|
onlyo-ds:
|
|
image: ${DORG?err}/onlyoffice/documentserver:7.1
|
|
restart: always
|
|
volumes:
|
|
- ${CONF?err}onlyo-ds.crt:/onlyo-ds.crt:ro
|
|
- ${CONF?err}onlyo-ds.key:/onlyo-ds.key:ro
|
|
- ${BIND?err}onlyo-ds-log:/var/log/onlyoffice
|
|
- ${BIND?err}onlyo-ds-lib:/var/lib/onlyoffice
|
|
- ${BIND?err}onlyo-ds-www:/var/www/onlyoffice/Data
|
|
- ${BIND?err}onlyo-ds-pg:/var/lib/postgresql
|
|
- ${BIND?err}onlyo-ds-rb:/var/lib/rabbitmq
|
|
- ${BIND?err}onlyo-ds-rd:/var/lib/redis
|
|
- ${BIND?err}onlyo-ds-font:/usr/share/fonts/truetype/custom
|
|
env_file:
|
|
- ${CONF?err}onlyo-ds.env
|
|
networks:
|
|
- local
|
|
|
|
|