From 072fbc5115cfd54b071ea3a1eab662edfcb70a31 Mon Sep 17 00:00:00 2001 From: Andrew Hurley Date: Thu, 1 Dec 2022 23:34:00 +1100 Subject: [PATCH] what --- docker-backup.sh | 23 ++-- docker-compose.yml | 260 +++++++++++++++++---------------------------- docker-restore.sh | 23 ++-- 3 files changed, 116 insertions(+), 190 deletions(-) diff --git a/docker-backup.sh b/docker-backup.sh index 95aa9f7..fede2db 100755 --- a/docker-backup.sh +++ b/docker-backup.sh @@ -1,27 +1,24 @@ #!/bin/bash -sudo docker run --rm \ +docker run --rm \ --name volumerize \ -e TZ=Australia/Perth \ -e VOLUMERIZE_SOURCE=/source \ -e VOLUMERIZE_TARGET=file:///backup \ -v backup_docker-cache:/volumerize-cache \ -v backup_docker-volume:/backup \ - -v docker_admin-data:/source/docker_admin-data:ro \ - -v docker_admin-dkim:/source/docker_admin-dkim:ro \ - -v docker_antispam-filter:/source/docker_antispam-filter:ro \ - -v docker_front-overrides:/source/docker_front-overrides:ro \ -v docker_gitea-data:/source/docker_gitea-data:ro \ -v docker_gitea-db:/source/docker_gitea-db:ro \ - -v docker_imap-mail:/source/docker_imap-mail:ro \ + -v docker_onlyo-ds-font:/source/docker_onlyo-ds-font:ro \ + -v docker_onlyo-ds-lib:/source/docker_onlyo-ds-lib:ro \ + -v docker_onlyo-ds-log:/source/docker_onlyo-ds-log:ro \ + -v docker_onlyo-ds-pg:/source/docker_onlyo-ds-pg:ro \ + -v docker_onlyo-ds-rb:/source/docker_onlyo-ds-rb:ro \ + -v docker_onlyo-ds-rd:/source/docker_onlyo-ds-rd:ro \ + -v docker_onlyo-ds-www:/source/docker_onlyo-ds-www:ro \ -v docker_passb-db:/source/docker_passb-db:ro \ -v docker_passb-gpg:/source/docker_passb-gpg:ro \ -v docker_passb-jwt:/source/docker_passb-jwt:ro \ - -v docker_redis-data:/source/docker_redis-data:ro \ - -v docker_regty-store:/source/docker_regty-store:ro \ - -v docker_searx-etc:/source/docker_searx-etc:ro \ - -v docker_searx-uwsgi:/source/docker_searx-uwsgi:ro \ - -v docker_smtp-queue:/source/docker_smtp-queue:ro \ - -v docker_webmail-data:/source/docker_webmail-data:ro \ - -v docker_webmail-overrides:/source/docker_webmail-overrides:ro \ + -v docker_swags-config:/source/docker_swags-config:ro \ + -v docker_whgle-config:/source/docker_whgle-config:ro \ blacklabelops/volumerize:1.7.1 backup diff --git a/docker-compose.yml b/docker-compose.yml index fb44a2a..20f08d8 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,15 +1,10 @@ --- networks: - mailu: - driver: bridge - name: mailu - ipam: - driver: default - config: - - subnet: 192.168.2.0/24 + share: + external: true local: - internal: true + internal: false gitea: internal: true passb: @@ -17,180 +12,70 @@ networks: volumes: - redis-data: - front-overrides: - admin-data: - admin-dkim: - imap-mail: - smtp-queue: - antispam-filter: - webmail-data: - webmail-overrides: - - searx-etc: - searx-uwsgi: + swags-config: + whgle-config: gitea-data: gitea-db: passb-gpg: passb-jwt: passb-db: - regty-store: + 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: ${DORG?err}/redis:alpine + swags: + image: andrew/swag:1.31.0 + build: + context: https://cor.cherished.me/gt/andrew/build-swag.git restart: always + environment: + - PUID=1000 + - PGID=2000 + - TZ=Australia/Perth + - URL=cherished.me + - VALIDATION=http + - SUBDOMAINS=ubu1,ods + - CERTPROVIDER= + - DNSPLUGIN= + - PROPAGATION= + - EMAIL= + - ONLY_SUBDOMAINS=true + - EXTRA_DOMAINS= + - STAGING=false 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 + - ${BIND?err}swags-config:/config + - ${CERT?err}cor.cherished.me.chained.crt:/defaults/custom-cert.crt:ro + - ${CERT?err}cor.cherished.me.key:/defaults/custom-cert.key:ro + - ${CONF?err}ggrav.subfolder.conf:/config/nginx/proxy-confs/ggrav.subfolder.conf:ro + - ${CONF?err}gitea.subfolder.conf:/config/nginx/proxy-confs/gitea.subfolder.conf:ro + - ${CONF?err}passb.subfolder.conf:/config/nginx/proxy-confs/passb.subfolder.conf:ro + - ${CONF?err}whgle.subfolder.conf:/config/nginx/proxy-confs/whgle.subfolder.conf:ro + - ${CONF?err}swags-index.html:/config/www/index.html:ro ports: - "80:80" - "443:443" - - "25:25" - - "465:465" - - "143:143" - - "993:993" - - "587:587" - - "110:110" - - "995:955" - 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 - - regty: - image: ${DORG?err}/registry:2 - restart: always - volumes: - - ${BIND?err}regty-store:/var/lib/registry - - ${CONF?err}regty-config.yml:/etc/docker/registry/config.yml:ro - - ${CONF?err}regty-htpasswd:/htpasswd:ro - env_file: - - ${CONF}regty.env networks: - local + - share - searx: - image: ${DORG?err}/searx/searx + whgle: + image: docker.io/benbusby/whoogle-search:0.7.4 restart: always + environment: + - WHOOGLE_URL_PREFIX=/wg volumes: - - ${BIND?err}searx-etc:/etc/searx - - ${BIND?err}searx-uwsgi:/var/log/uwsgi - env_file: - - ${CONF?err}searx.env + - ${BIND?err}whgle-config:/config networks: - local gitea: - image: ${DORG?err}/gitea/gitea:1.16.9 + image: docker.io/gitea/gitea:1.16.9 restart: always volumes: - ${BIND?err}gitea-data:/data @@ -205,7 +90,7 @@ services: - gitea gitea-db: - image: ${DORG?err}/mariadb:10.8 + image: docker.io/mariadb:10.8 restart: always volumes: - ${BIND?err}gitea-db:/var/lib/mysql @@ -220,7 +105,7 @@ services: - gitea passb: - image: ${DORG?err}/passbolt/passbolt:3.7.2-1-ce + image: docker.io/passbolt/passbolt:3.7.2-1-ce restart: always volumes: - ${BIND?err}passb-gpg:/etc/passbolt/gpg @@ -235,7 +120,7 @@ services: - passb passb-db: - image: ${DORG?err}/mariadb:10.8 + image: docker.io/mariadb:10.8 restart: always volumes: - ${BIND?err}passb-db:/var/lib/mysql @@ -249,4 +134,51 @@ services: networks: - passb - + onlyo-ds: + image: docker.io/onlyoffice/documentserver:7.1 + restart: always + ports: + - "9443:443" + 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 + environment: + - ONLYOFFICE_HTTPS_HSTS_ENABLED=true + - ONLYOFFICE_HTTPS_HSTS_MAXAGE= + - SSL_CERTIFICATE_PATH=/onlyo-ds.crt + - SSL_KEY_PATH=/onlyo-ds.key + - SSL_DHPARAM_PATH= + - SSL_VERIFY_CLIENT= + - DB_TYPE= + - DB_HOST= + - DB_PORT= + - DB_NAME= + - DB_USER= + - DB_PWD= + - AMQP_URI= + - AMQP_TYPE= + - REDIS_SERVER_HOST= + - REDIS_SERVER_PORT= + - NGINX_WORKER_PROCESSES= + - NGINX_WORKER_CONNECTIONS= + - JWT_ENABLED= + - JWT_SECRET= + - JWT_HEADER= + - JWT_IN_BODY= + - USE_UNAUTHORIZED_STORAGE= + - GENERATE_FONTS= + - METRICS_ENABLED= + - METRICS_HOST= + - METRICS_PORT= + - METRICS_PREFIX= + - LETS_ENCRYPT_DOMAIN= + - LETS_ENCRYPT_MAIL= + networks: + - local diff --git a/docker-restore.sh b/docker-restore.sh index fab3804..290262b 100755 --- a/docker-restore.sh +++ b/docker-restore.sh @@ -1,27 +1,24 @@ #!/bin/bash -sudo docker run --rm \ +docker run --rm \ --name volumerize \ -e TZ=Australia/Perth \ -e VOLUMERIZE_SOURCE=/source \ -e VOLUMERIZE_TARGET=file:///backup \ -v backup_docker-cache:/volumerize-cache \ -v backup_docker-volume:/backup:ro \ - -v docker_admin-data:/source/docker_admin-data \ - -v docker_admin-dkim:/source/docker_admin-dkim \ - -v docker_antispam-filter:/source/docker_antispam-filter \ - -v docker_front-overrides:/source/docker_front-overrides \ -v docker_gitea-data:/source/docker_gitea-data \ -v docker_gitea-db:/source/docker_gitea-db \ - -v docker_imap-mail:/source/docker_imap-mail \ + -v docker_onlyo-ds-font:/source/docker_onlyo-ds-font \ + -v docker_onlyo-ds-lib:/source/docker_onlyo-ds-lib \ + -v docker_onlyo-ds-log:/source/docker_onlyo-ds-log \ + -v docker_onlyo-ds-pg:/source/docker_onlyo-ds-pg \ + -v docker_onlyo-ds-rb:/source/docker_onlyo-ds-rb \ + -v docker_onlyo-ds-rd:/source/docker_onlyo-ds-rd \ + -v docker_onlyo-ds-www:/source/docker_onlyo-ds-www \ -v docker_passb-db:/source/docker_passb-db \ -v docker_passb-gpg:/source/docker_passb-gpg \ -v docker_passb-jwt:/source/docker_passb-jwt \ - -v docker_redis-data:/source/docker_redis-data \ - -v docker_regty-store:/source/docker_regty-store \ - -v docker_searx-etc:/source/docker_searx-etc \ - -v docker_searx-uwsgi:/source/docker_searx-uwsgi \ - -v docker_smtp-queue:/source/docker_smtp-queue \ - -v docker_webmail-data:/source/docker_webmail-data \ - -v docker_webmail-overrides:/source/docker_webmail-overrides \ + -v docker_swags-config:/source/docker_swags-config \ + -v docker_whgle-config:/source/docker_whgle-config \ blacklabelops/volumerize:1.7.1 restore