From cbeb17285afa23558742add6dc9792b57d66921a Mon Sep 17 00:00:00 2001 From: mvbingham Date: Sun, 14 Dec 2025 21:01:14 -0500 Subject: [PATCH] first commit --- dashy/docker-compose.yml | 11 +++++++ excalidraw/docker-compose.yml | 12 ++++++++ gitea/docker-compose.yml | 13 ++++++++ homebox/docker-compose.yml | 18 +++++++++++ ittools/docker-compose.yml | 7 +++++ lubelogger/docker-compose.yml | 29 ++++++++++++++++++ mealie/docker-compose.yml | 58 +++++++++++++++++++++++++++++++++++ ntfy/docker-compose.yml | 20 ++++++++++++ papermerge/docker-compose.yml | 27 ++++++++++++++++ sterling/docker-compose.yml | 31 +++++++++++++++++++ uotimekuma/docker-compose.yml | 9 ++++++ wordpress/docker-compose.yml | 34 ++++++++++++++++++++ 12 files changed, 269 insertions(+) create mode 100644 dashy/docker-compose.yml create mode 100644 excalidraw/docker-compose.yml create mode 100644 gitea/docker-compose.yml create mode 100644 homebox/docker-compose.yml create mode 100644 ittools/docker-compose.yml create mode 100644 lubelogger/docker-compose.yml create mode 100644 mealie/docker-compose.yml create mode 100644 ntfy/docker-compose.yml create mode 100644 papermerge/docker-compose.yml create mode 100644 sterling/docker-compose.yml create mode 100644 uotimekuma/docker-compose.yml create mode 100644 wordpress/docker-compose.yml diff --git a/dashy/docker-compose.yml b/dashy/docker-compose.yml new file mode 100644 index 0000000..0f59f7c --- /dev/null +++ b/dashy/docker-compose.yml @@ -0,0 +1,11 @@ +name: dashy +services: + dashy: + ports: + - 8295:8080 + volumes: + - /root/dashy/public/conf.yml:/app/public/conf.yml + - /root/dashy/icons:/app/public/item-icons/icons + container_name: dashy + restart: unless-stopped + image: lissy93/dashy:latest \ No newline at end of file diff --git a/excalidraw/docker-compose.yml b/excalidraw/docker-compose.yml new file mode 100644 index 0000000..bf2e584 --- /dev/null +++ b/excalidraw/docker-compose.yml @@ -0,0 +1,12 @@ +services: + excalidraw: + container_name: Excalidraw + healthcheck: + test: curl -f http://localhost:80/ || exit 1 + image: excalidraw/excalidraw:latest + ports: + - 3765:80 + restart: on-failure:5 + stdin_open: true + environment: + - NODE_ENV=production \ No newline at end of file diff --git a/gitea/docker-compose.yml b/gitea/docker-compose.yml new file mode 100644 index 0000000..c2812c1 --- /dev/null +++ b/gitea/docker-compose.yml @@ -0,0 +1,13 @@ +services: + gitea: + image: gitea/gitea:latest + container_name: gitea + restart: always + volumes: + - ./data:/data + ports: + - "3000:3000" + - "2222:22" + environment: + - USER_UID=1000 + - USER_GID=1000 \ No newline at end of file diff --git a/homebox/docker-compose.yml b/homebox/docker-compose.yml new file mode 100644 index 0000000..02dc165 --- /dev/null +++ b/homebox/docker-compose.yml @@ -0,0 +1,18 @@ +services: + homebox: + image: ghcr.io/hay-kot/homebox:latest + container_name: homebox + restart: unless-stopped + environment: + - HBOX_LOG_LEVEL=info + - HBOX_LOG_FORMAT=text + - HBOX_WEB_MAX_UPLOAD_SIZE=10 + - HBOX_OPTIONS_ALLOW_REGISTRATION=false + volumes: + - ./homebox-data:/data/ + ports: + - 3100:7745 + +volumes: + homebox-data: + driver: local \ No newline at end of file diff --git a/ittools/docker-compose.yml b/ittools/docker-compose.yml new file mode 100644 index 0000000..577a95b --- /dev/null +++ b/ittools/docker-compose.yml @@ -0,0 +1,7 @@ +services: + it-tools: + image: 'corentinth/it-tools:latest' # The Docker image to use. + ports: + - '8070:80' # Maps port 80 inside the container to port 8080 on the host. + restart: unless-stopped # Ensures the container restarts unless it is explicitly stopped. + container_name: it-tools # Custom name for the container. \ No newline at end of file diff --git a/lubelogger/docker-compose.yml b/lubelogger/docker-compose.yml new file mode 100644 index 0000000..4ba1db3 --- /dev/null +++ b/lubelogger/docker-compose.yml @@ -0,0 +1,29 @@ +services: + app: + image: ghcr.io/hargata/lubelogger:latest + build: . + restart: unless-stopped + # volumes used to keep data persistent + volumes: + - config:/App/config + - data:/App/data + - translations:/App/wwwroot/translations + - documents:/App/wwwroot/documents + - images:/App/wwwroot/images + - temp:/App/wwwroot/temp + - log:/App/log + - keys:/root/.aspnet/DataProtection-Keys + # expose port and/or use serving via traefik + ports: + - 8088:8080 + env_file: + - stack.env + +volumes: + config: + data: + translations: + documents: + images: + temp: + log: \ No newline at end of file diff --git a/mealie/docker-compose.yml b/mealie/docker-compose.yml new file mode 100644 index 0000000..0545e88 --- /dev/null +++ b/mealie/docker-compose.yml @@ -0,0 +1,58 @@ +services: + db: + image: postgres:16 + container_name: Mealie-DB + hostname: mealie-db + mem_limit: 1g + cpu_shares: 768 + security_opt: + - no-new-privileges:true + healthcheck: + test: ["CMD", "pg_isready", "-q", "-d", "mealie", "-U", "mealieuser"] + timeout: 45s + interval: 10s + retries: 10 + volumes: + - /volume1/docker/mealie/db:/var/lib/postgresql/data:rw + environment: + POSTGRES_DB: mealie + POSTGRES_USER: mealieuser + POSTGRES_PASSWORD: mealiepass + restart: on-failure:5 + + mealie: + image: ghcr.io/mealie-recipes/mealie:latest + container_name: Mealie + hostname: mealie + mem_limit: 4g + cpu_shares: 1024 + security_opt: + - no-new-privileges:true + read_only: false + ports: + - 9925:9000 + volumes: + - /volume1/docker/mealie/data:/app/data/:rw + environment: + TZ: Europe/Bucharest + MAX_WORKERS: 1 + WEB_CONCURRENCY: 1 + ALLOW_SIGNUP: true #or false + BASE_URL: http://192.168.10.115 #or https://mealie.yourname.synology.me + DB_ENGINE: postgres + POSTGRES_USER: mealieuser + POSTGRES_PASSWORD: mealiepass + POSTGRES_SERVER: mealie-db + POSTGRES_PORT: 5432 + POSTGRES_DB: mealie + SMTP_HOST: smtp.gmail.com + SMTP_PORT: 587 + SMTP_FROM_NAME: Mealie + SMTP_AUTH_STRATEGY: TLS # Options: TLS, SSL, NONE + SMTP_FROM_EMAIL: mv.bingham@gmail.com + SMTP_USER: mv.bingham@gmail.com + SMTP_PASSWORD: lnyk rkjf ogxw fxou + restart: on-failure:5 + depends_on: + db: + condition: service_healthy \ No newline at end of file diff --git a/ntfy/docker-compose.yml b/ntfy/docker-compose.yml new file mode 100644 index 0000000..e1bf28a --- /dev/null +++ b/ntfy/docker-compose.yml @@ -0,0 +1,20 @@ +services: + ntfy: + image: binwiederhier/ntfy:latest + container_name: ntfy + command: - serve # Explicitly tells the container to run the ntfy server + environment: + - TZ=UTC # optional: set desired timezone (e.g., Asia/Kolkata) + user: UID:GID # optional: replace with your own user/group or uid/gid + volumes: + - ./cache:/var/cache/ntfy # Maps host directory for persistent cache + - ./config:/etc/ntfy # Maps host directory for config files (e.g., server.yml) + ports: + - '8082:80' # Maps host port 8082 to container port 80 (default HTTP) + healthcheck: # Optional: defines a health check for the service + test: ["CMD-SHELL", "wget -q --tries=1 http://localhost:80/v1/health -O - | grep -Eo '\"healthy\"\\s*:\\s*true' || exit 1"] + interval: 60s + timeout: 10s + retries: 3 + start_period: 40s + restart: unless-stopped \ No newline at end of file diff --git a/papermerge/docker-compose.yml b/papermerge/docker-compose.yml new file mode 100644 index 0000000..bfbcc1e --- /dev/null +++ b/papermerge/docker-compose.yml @@ -0,0 +1,27 @@ +x-backend: &common + image: papermerge/papermerge:3.2 + environment: + PAPERMERGE__SECURITY__SECRET_KEY: 12345 + PAPERMERGE__AUTH__USERNAME: admin + PAPERMERGE__AUTH__PASSWORD: admin + PAPERMERGE__REDIS__URL: redis://redis:6379/0 + volumes: + - data:/db + - index_db:/core_app/index_db + - media:/core_app/media +services: + web: + <<: *common + ports: + - "12000:80" + depends_on: + - redis + worker: + <<: *common + command: worker + redis: + image: redis:6 +volumes: + data: + index_db: + media: \ No newline at end of file diff --git a/sterling/docker-compose.yml b/sterling/docker-compose.yml new file mode 100644 index 0000000..15dcb6e --- /dev/null +++ b/sterling/docker-compose.yml @@ -0,0 +1,31 @@ +services: + stirling-pdf: + container_name: Stirling-PDF + image: stirlingtools/stirling-pdf:latest + deploy: + resources: + limits: + memory: 4G + healthcheck: + test: ["CMD-SHELL", "curl -f http://localhost:8080/api/v1/info/status | grep -q 'UP' && curl -fL http://localhost:8080/ | grep -qv 'Please sign in'"] + interval: 5s + timeout: 10s + retries: 16 + ports: + - "8090:8080" + volumes: + - /stirling/latest/data:/usr/share/tessdata:rw + - /stirling/latest/config:/configs:rw + - /stirling/latest/logs:/logs:rw + environment: + DOCKER_ENABLE_SECURITY: "false" + SECURITY_ENABLELOGIN: "false" + LANGS: "en_GB,en_US,ar_AR,de_DE,fr_FR,es_ES,zh_CN,zh_TW,ca_CA,it_IT,sv_SE,pl_PL,ro_RO,ko_KR,pt_BR,ru_RU,el_GR,hi_IN,hu_HU,tr_TR,id_ID" + SYSTEM_DEFAULTLOCALE: en-US + UI_APPNAME: Stirling-PDF + UI_HOMEDESCRIPTION: Demo site for Stirling-PDF Latest + UI_APPNAMENAVBAR: Stirling-PDF Latest + SYSTEM_MAXFILESIZE: "100" + METRICS_ENABLED: "true" + SYSTEM_GOOGLEVISIBILITY: "true" + restart: on-failure:5 \ No newline at end of file diff --git a/uotimekuma/docker-compose.yml b/uotimekuma/docker-compose.yml new file mode 100644 index 0000000..363e4ec --- /dev/null +++ b/uotimekuma/docker-compose.yml @@ -0,0 +1,9 @@ +services: + uptime-kuma: + image: louislam/uptime-kuma:1 + container_name: uptime-kuma + restart: always + ports: + - "7200:3001" + volumes: + - /data/uptime-kuma/data:/app/data \ No newline at end of file diff --git a/wordpress/docker-compose.yml b/wordpress/docker-compose.yml new file mode 100644 index 0000000..1acd448 --- /dev/null +++ b/wordpress/docker-compose.yml @@ -0,0 +1,34 @@ +services: + wordpress-mb: + image: wordpress:latest + depends_on: + - db-mb + ports: + - 8181:80 + environment: + - WORDPRESS_DB_HOST=db-mb:3306 + - WORDPRESS_DB_USER=wordpress + - WORDPRESS_DB_PASSWORD=Q7tTJ8aat_prt5NE + - WORDPRESS_DB_NAME=wordpress + volumes: + - mb_wordpress_data:/var/www/html + networks: + - npm_default + + db-mb: + image: mariadb:latest + environment: + - MYSQL_ROOT_PASSWORD=root + - MYSQL_DATABASE=wordpress + - MYSQL_USER=wordpress + - MYSQL_PASSWORD=Q7tTJ8aat_prt5NE + volumes: + - mb_db_data:/var/lib/mysql + networks: + - npm_default +networks: + npm_default: + external: true +volumes: + mb_wordpress_data: + mb_db_data: \ No newline at end of file