From 4b1409e1a8e753a32dbd035abf2cf8d0cbe0c4ed Mon Sep 17 00:00:00 2001 From: Florian Zirker Date: Thu, 23 Feb 2023 11:25:02 +0100 Subject: [PATCH 1/3] Added a Notify server for push messages. --- push/docker-compose.yaml | 40 ++++++++++++++++++++++++++++++++++++++++ start-all.sh | 1 + 2 files changed, 41 insertions(+) create mode 100644 push/docker-compose.yaml diff --git a/push/docker-compose.yaml b/push/docker-compose.yaml new file mode 100644 index 0000000..a05e51c --- /dev/null +++ b/push/docker-compose.yaml @@ -0,0 +1,40 @@ +services: + + ntfy: + image: binwiederhier/ntfy:${NTFY_VERSION} + restart: unless-stopped + networks: + - web + command: + - serve + environment: + - TZ=UTC + - NTFY_BASE_URL=https://push.florianzirker.de + - NTFY_LISTEN_HTTP=0.0.0.0:80 + - NTFY_CACHE_FILE=/var/cache/ntfy/cache.db + - NTFY_CACHE_DURATION=24h + - NTFY_BEHIND_PROXY=true + - NTFY_ATTACHMENT_CACHE_DIR=/var/cache/ntfy/attachments + - NTFY_KEEPALIVE_INTERVAL=45s + - NTFY_AUTH_DEFAULT_ACCESS=deny-all + - NTFY_AUTH_FILE=/var/lib/ntfy/user.db + - NTFY_ENABLE_SIGNUP=false + - NTFY_ENABLE_LOGIN=true + - NTFY_ENABLE_RESERVATIONS=false + volumes: + - ${VOLUMES_PATH}/push/ntfy/cache/:/var/cache/ntfy + - ${VOLUMES_PATH}/push/ntfy/varlib/:/var/lib/ntfy/ + labels: + - "traefik.enable=true" + - "traefik.http.routers.push.rule=Host(`push.${DOMAIN}`)" + - "traefik.http.routers.push.entrypoints=websecure" + - "traefik.http.routers.push.tls.certresolver=netcup" + - "traefik.http.routers.push.tls.options=intermediate@file" + - "traefik.http.services.push.loadbalancer.server.port=80" + - "docker.group=push" + +networks: + push: + web: + external: true + diff --git a/start-all.sh b/start-all.sh index 666d0fe..06d3050 100755 --- a/start-all.sh +++ b/start-all.sh @@ -12,3 +12,4 @@ up gitea; up wallabag; up www; up firefoxsync; +up push; From 160b9286c3b31704cd01a5d67d63da454319983a Mon Sep 17 00:00:00 2001 From: Florian Zirker Date: Thu, 23 Feb 2023 11:28:01 +0100 Subject: [PATCH 2/3] Gitea -> forgejo --- git/docker-compose.yaml | 59 +++++++++++++++++++++++++++++++++++++++ gitea/docker-compose.yaml | 55 ------------------------------------ 2 files changed, 59 insertions(+), 55 deletions(-) create mode 100644 git/docker-compose.yaml delete mode 100644 gitea/docker-compose.yaml diff --git a/git/docker-compose.yaml b/git/docker-compose.yaml new file mode 100644 index 0000000..2b8d254 --- /dev/null +++ b/git/docker-compose.yaml @@ -0,0 +1,59 @@ +services: + + web: + image: codeberg.org/forgejo/forgejo:1.18 + volumes: + - ${VOLUMES_PATH}/git/forgejo_data:/data + - /etc/timezone:/etc/timezone:ro + - /etc/localtime:/etc/localtime:ro + ports: + - "2222:22" + networks: + - web + - git + labels: + - "traefik.enable=true" + - "traefik.http.routers.forgejo.rule=Host(`gitea.${DOMAIN}`, `git.${DOMAIN}`)" + - "traefik.http.routers.forgejo.entrypoints=websecure" + - "traefik.http.routers.forgejo.tls.certresolver=netcup" + - "traefik.http.routers.forgejo.tls.options=intermediate@file" + - "traefik.http.routers.forgejo.middlewares=gitearedir" + - "traefik.http.middlewares.gitearedir.redirectregex.regex=^https://gitea.${DOMAIN}/(.*)" + - "traefik.http.middlewares.gitearedir.redirectregex.replacement=https://git.${DOMAIN}/$${1}" + - "traefik.http.middlewares.gitearedir.redirectregex.permanent=true" + - "traefik.http.services.forgejo.loadbalancer.server.port=3000" + - "docker.group=git" + depends_on: + - db + restart: unless-stopped + environment: + - USER_UID=1000 + - USER_GID=1000 + - DB_TYPE=mysql + - DB_TYPE=postgres + - DB_HOST=db:5432 + - DB_NAME=${POSTGRES_DB} + - DB_USER=${POSTGRES_USER} + - DB_PASSWD=${POSTGRES_PASSWORD} + + + db: + image: postgres:13 + restart: unless-stopped + environment: + - POSTGRES_USER=${POSTGRES_USER} + - POSTGRES_PASSWORD=${POSTGRES_PASSWORD} + - POSTGRES_DB=${POSTGRES_DB} + networks: + - git + volumes: + - ${VOLUMES_PATH}/git/forgejo_db:/var/lib/postgresql/data + labels: + - "docker.group=git" + + +networks: + git: + web: + external: true + diff --git a/gitea/docker-compose.yaml b/gitea/docker-compose.yaml deleted file mode 100644 index 68b97d8..0000000 --- a/gitea/docker-compose.yaml +++ /dev/null @@ -1,55 +0,0 @@ -services: - - web: - image: gitea/gitea:1 - volumes: - - ${VOLUMES_PATH}/gitea_data:/data - - /etc/timezone:/etc/timezone:ro - - /etc/localtime:/etc/localtime:ro - ports: - - "2222:22" - networks: - - web - - gitea - labels: - - "traefik.enable=true" - - "traefik.http.routers.gitea.rule=Host(`gitea.${DOMAIN}`)" - - "traefik.http.routers.gitea.entrypoints=websecure" - - "traefik.http.routers.gitea.tls.certresolver=netcup" - - "traefik.http.routers.gitea.tls.options=intermediate@file" - - "traefik.http.services.gitea.loadbalancer.server.port=3000" - - "docker.group=gitea" - depends_on: - - db - restart: unless-stopped - environment: - - USER_UID=1000 - - USER_GID=1000 - - DB_TYPE=mysql - - DB_TYPE=postgres - - DB_HOST=db:5432 - - DB_NAME=${POSTGRES_DB} - - DB_USER=${POSTGRES_USER} - - DB_PASSWD=${POSTGRES_PASSWORD} - - - db: - image: postgres:13 - restart: unless-stopped - environment: - - POSTGRES_USER=${POSTGRES_USER} - - POSTGRES_PASSWORD=${POSTGRES_PASSWORD} - - POSTGRES_DB=${POSTGRES_DB} - networks: - - gitea - volumes: - - ${VOLUMES_PATH}/gitea_db:/var/lib/postgresql/data - labels: - - "docker.group=gitea" - - -networks: - gitea: - web: - external: true - From 38e861d2329ce559b3eba374af662736d6e5c342 Mon Sep 17 00:00:00 2001 From: Florian Zirker Date: Thu, 23 Feb 2023 11:30:09 +0100 Subject: [PATCH 3/3] Build own Nextcloud docker container with tools to use flow. --- nextcloud/Dockerfile | 10 ++++++++++ nextcloud/docker-compose.yaml | 12 ++++++++++-- 2 files changed, 20 insertions(+), 2 deletions(-) create mode 100644 nextcloud/Dockerfile diff --git a/nextcloud/Dockerfile b/nextcloud/Dockerfile new file mode 100644 index 0000000..1d305a7 --- /dev/null +++ b/nextcloud/Dockerfile @@ -0,0 +1,10 @@ +ARG NC_MAIN_VERSION +FROM nextcloud:$NC_MAIN_VERSION-fpm + +RUN apt-get update && apt-get install -y --no-install-recommends \ + imagemagick \ + smbclient \ + default-jre-headless libreoffice \ + ffmpeg \ + ocrmypdf tesseract-ocr-deu \ + && rm -rf /var/lib/apt/lists/* diff --git a/nextcloud/docker-compose.yaml b/nextcloud/docker-compose.yaml index 2c3a037..d890e32 100644 --- a/nextcloud/docker-compose.yaml +++ b/nextcloud/docker-compose.yaml @@ -27,7 +27,11 @@ services: app: - image: nextcloud:${NC_MAIN_VERSION}-fpm + image: nextcloud:${NC_MAIN_VERSION}-fpm-own + build: + context: ./ + args: + - NC_MAIN_VERSION=${NC_MAIN_VERSION} volumes: - ${VOLUMES_PATH}/nextcloud_html:/var/www/html - ${VOLUMES_PATH}/nextcloud_data:/var/www/html/data @@ -50,7 +54,11 @@ services: cron: - image: nextcloud:${NC_MAIN_VERSION} + image: nextcloud:${NC_MAIN_VERSION}-fpm-own + build: + context: ./ + args: + - NC_MAIN_VERSION=${NC_MAIN_VERSION} restart: unless-stopped networks: - nextcloud