mirror of
https://github.com/JG2401/HetznerDokployLab.git
synced 2026-10-28 21:00:47 +00:00
Compare commits
38
Commits
4c524f53e1
..
main
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
ae64e96a62 | ||
|
|
790e9ea9f5 | ||
|
|
d2f66c6818 | ||
|
|
c337aad4fa | ||
|
|
82248e6856 | ||
|
|
ea6551ce39 | ||
|
|
891e6b2f15 | ||
|
|
f47e6fda3c | ||
|
|
4d3d9a01f3 | ||
|
|
afb2e12239 | ||
|
|
27cf49f696 | ||
|
|
4bd61d4968 | ||
|
|
4b297f33d3 | ||
|
|
a5ead7f883 | ||
|
|
6a57f9c7be | ||
|
|
45192a7549 | ||
|
|
5d98464265 | ||
|
|
d7b46acf0f | ||
|
|
26679ba759 | ||
|
|
88b972b589 | ||
|
|
3b603f1536 | ||
|
|
ab9dba0944 | ||
|
|
29446ca18c | ||
|
|
4f4c5dba85 | ||
|
|
128bc7fd2e | ||
|
|
c65b484704 | ||
|
|
0e352dd896 | ||
|
|
d678acadf6 | ||
|
|
534caca3df | ||
|
|
2bec890334 | ||
|
|
d9e3faa9dc | ||
|
|
8309cf448c | ||
|
|
04ec733589 | ||
|
|
17b246ba97 | ||
|
|
dbae1ea647 | ||
|
|
e198e32986 | ||
|
|
e35a03f7f2 | ||
|
|
6cbd404054 |
+29
-8
@@ -5,13 +5,6 @@
|
|||||||
|
|
||||||
version: 2
|
version: 2
|
||||||
updates:
|
updates:
|
||||||
#firefly
|
|
||||||
- package-ecosystem: "docker-compose"
|
|
||||||
directory: "/projects/firefly"
|
|
||||||
schedule:
|
|
||||||
interval: "weekly"
|
|
||||||
labels:
|
|
||||||
- "firefly"
|
|
||||||
#immich
|
#immich
|
||||||
- package-ecosystem: "docker-compose"
|
- package-ecosystem: "docker-compose"
|
||||||
directory: "/projects/immich"
|
directory: "/projects/immich"
|
||||||
@@ -95,4 +88,32 @@ updates:
|
|||||||
schedule:
|
schedule:
|
||||||
interval: "weekly"
|
interval: "weekly"
|
||||||
labels:
|
labels:
|
||||||
- "audiobookshelf"
|
- "audiobookshelf"
|
||||||
|
#wallos
|
||||||
|
- package-ecosystem: "docker-compose"
|
||||||
|
directory: "/projects/wallos"
|
||||||
|
schedule:
|
||||||
|
interval: "weekly"
|
||||||
|
labels:
|
||||||
|
- "wallos"
|
||||||
|
#ntfy
|
||||||
|
- package-ecosystem: "docker-compose"
|
||||||
|
directory: "/projects/ntfy"
|
||||||
|
schedule:
|
||||||
|
interval: "weekly"
|
||||||
|
labels:
|
||||||
|
- "ntfy"
|
||||||
|
#anytype
|
||||||
|
- package-ecosystem: "docker-compose"
|
||||||
|
directory: "/projects/anytype"
|
||||||
|
schedule:
|
||||||
|
interval: "weekly"
|
||||||
|
labels:
|
||||||
|
- "anytype"
|
||||||
|
#uptime-kuma
|
||||||
|
- package-ecosystem: "docker-compose"
|
||||||
|
directory: "/projects/uptime-kuma"
|
||||||
|
schedule:
|
||||||
|
interval: "weekly"
|
||||||
|
labels:
|
||||||
|
- "uptime-kuma"
|
||||||
@@ -0,0 +1,24 @@
|
|||||||
|
# [Anytype](https://anytype.io)
|
||||||
|
|
||||||
|
## anytype
|
||||||
|
|
||||||
|
### General
|
||||||
|
|
||||||
|
- Compose Path: `./projects/anytype/docker-compose.yml`
|
||||||
|
|
||||||
|
### Environment
|
||||||
|
|
||||||
|
- SERVER_IP: `123.123.123.123`
|
||||||
|
|
||||||
|
### Domains
|
||||||
|
|
||||||
|
- Service Name: `anytype`
|
||||||
|
- Container Port: `8443`
|
||||||
|
- HTTPS: `true`
|
||||||
|
- Certificate Provider: `Let's Encrypt`
|
||||||
|
|
||||||
|
### Notes
|
||||||
|
|
||||||
|
- The container stores its data in the `anytype_data` volume.
|
||||||
|
- Expose your service through Dokploy with the configured host and port.
|
||||||
|
- Adjust the environment values to match your deployment and public URL.
|
||||||
@@ -0,0 +1,11 @@
|
|||||||
|
services:
|
||||||
|
any-sync-bundle:
|
||||||
|
image: ghcr.io/grishy/any-sync-bundle:1.7.0-2026-10-12
|
||||||
|
restart: unless-stopped
|
||||||
|
ports:
|
||||||
|
- "33010:33010"
|
||||||
|
- "33020:33020/udp"
|
||||||
|
volumes:
|
||||||
|
- /opt/media/storagebox/anytype:/data
|
||||||
|
environment:
|
||||||
|
ANY_SYNC_BUNDLE_INIT_EXTERNAL_ADDRS: ${SERVER_IP}
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
services:
|
services:
|
||||||
audiobookshelf:
|
audiobookshelf:
|
||||||
image: ghcr.io/advplyr/audiobookshelf:2.37.1
|
image: ghcr.io/advplyr/audiobookshelf:2.37.2
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
expose:
|
expose:
|
||||||
- 80
|
- 80
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
services:
|
services:
|
||||||
bentopdf:
|
bentopdf:
|
||||||
image: ghcr.io/alam00000/bentopdf-simple:2.8.8
|
image: ghcr.io/alam00000/bentopdf-simple:2.8.10
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
expose:
|
expose:
|
||||||
- 8080
|
- 8080
|
||||||
|
|||||||
@@ -1,38 +0,0 @@
|
|||||||
# [firefly](https://www.firefly-iii.org)
|
|
||||||
|
|
||||||
## firefly
|
|
||||||
|
|
||||||
### General
|
|
||||||
|
|
||||||
- Compose Path: `./projects/firefly/docker-compose.yml`
|
|
||||||
|
|
||||||
### Environment
|
|
||||||
|
|
||||||
- SITE_OWNER: #site owner email-address
|
|
||||||
- DB_CONNECTION: #db connection type like `mysql` or `postgres`
|
|
||||||
- DB_HOST: #db hostname
|
|
||||||
- DB_PORT: #database port - default: `3306`
|
|
||||||
- DB_DATABASE: #database name
|
|
||||||
- DB_USERNAME: #database user-name
|
|
||||||
- DB_PASSWORD: #database password
|
|
||||||
- STATIC_CRON_TOKEN: #32 digits token - use [it-tools token-generator](https://it-tools.tech/token-generator?length=32) to get one
|
|
||||||
- APP_ENV: #default: `production`
|
|
||||||
- APP_KEY: #a base64 php app key - use [Generate Laravel APP_KEY](https://generate-random.org/laravel-key) to get one
|
|
||||||
- APP_URL: #default: `http://app:8080`
|
|
||||||
- TRUSTED_PROXIES: default: `"*"`
|
|
||||||
|
|
||||||
### Domains
|
|
||||||
|
|
||||||
- Service Name: `firefly`
|
|
||||||
- Container Port: `8080`
|
|
||||||
- HTTPS: `true`
|
|
||||||
- Certificate Provider: `Let's Encrypt`
|
|
||||||
|
|
||||||
### Volume Backups
|
|
||||||
|
|
||||||
- Task Name: `db`
|
|
||||||
- Schedule `0 0 * * *`
|
|
||||||
- Service Name: `db`
|
|
||||||
- Volume: `firefly-firefly-xxx`
|
|
||||||
- Keep Latest Backups: `7`
|
|
||||||
- Enabled: true
|
|
||||||
@@ -1,81 +0,0 @@
|
|||||||
services:
|
|
||||||
firefly:
|
|
||||||
image: fireflyiii/core:version-6.6.2
|
|
||||||
deploy:
|
|
||||||
resources:
|
|
||||||
limits:
|
|
||||||
cpus: "1.0"
|
|
||||||
memory: 1.5G
|
|
||||||
hostname: app
|
|
||||||
container_name: firefly_iii_core
|
|
||||||
restart: unless-stopped
|
|
||||||
labels:
|
|
||||||
- rclone.storage=storagebox-crypt
|
|
||||||
volumes:
|
|
||||||
- type: bind
|
|
||||||
source: /opt/media/storagebox/firefly/upload
|
|
||||||
target: /var/www/html/storage/upload
|
|
||||||
bind:
|
|
||||||
propagation: rslave
|
|
||||||
create_host_path: false
|
|
||||||
healthcheck:
|
|
||||||
test:
|
|
||||||
[
|
|
||||||
"CMD-SHELL",
|
|
||||||
"timeout 10 ls /var/www/html/storage/upload >/dev/null 2>&1 || exit 1"
|
|
||||||
]
|
|
||||||
interval: 30s
|
|
||||||
timeout: 15s
|
|
||||||
retries: 3
|
|
||||||
start_period: 60s
|
|
||||||
environment:
|
|
||||||
SITE_OWNER: ${SITE_OWNER}
|
|
||||||
DB_CONNECTION: ${DB_CONNECTION}
|
|
||||||
DB_HOST: ${DB_HOST}
|
|
||||||
DB_PORT: ${DB_PORT}
|
|
||||||
DB_DATABASE: ${DB_DATABASE}
|
|
||||||
DB_USERNAME: ${DB_USERNAME}
|
|
||||||
DB_PASSWORD: ${DB_PASSWORD}
|
|
||||||
STATIC_CRON_TOKEN: ${STATIC_CRON_TOKEN}
|
|
||||||
APP_ENV: ${APP_ENV}
|
|
||||||
APP_KEY: ${APP_KEY}
|
|
||||||
APP_URL: ${APP_URL}
|
|
||||||
TRUSTED_PROXIES: ${TRUSTED_PROXIES}
|
|
||||||
networks:
|
|
||||||
- dokploy-network
|
|
||||||
|
|
||||||
cron:
|
|
||||||
image: alpine:3.24.2
|
|
||||||
restart: unless-stopped
|
|
||||||
container_name: firefly_iii_cron
|
|
||||||
environment:
|
|
||||||
STATIC_CRON_TOKEN: ${STATIC_CRON_TOKEN}
|
|
||||||
command: sh -c "
|
|
||||||
apk add tzdata && \
|
|
||||||
(ln -s /usr/share/zoneinfo/$$TZ /etc/localtime || true) && \
|
|
||||||
echo \"0 3 * * * wget -qO- http://app:8080/api/v1/cron/$$STATIC_CRON_TOKEN;echo\" | crontab - && \
|
|
||||||
crond -f -L /dev/stdout"
|
|
||||||
networks:
|
|
||||||
- dokploy-network
|
|
||||||
|
|
||||||
db:
|
|
||||||
image: mariadb:13.0
|
|
||||||
hostname: db
|
|
||||||
container_name: firefly_iii_db
|
|
||||||
restart: unless-stopped
|
|
||||||
environment:
|
|
||||||
MYSQL_RANDOM_ROOT_PASSWORD: ${MYSQL_RANDOM_ROOT_PASSWORD}
|
|
||||||
MYSQL_USER: ${DB_USERNAME}
|
|
||||||
MYSQL_PASSWORD: ${DB_PASSWORD}
|
|
||||||
MYSQL_DATABASE: ${DB_DATABASE}
|
|
||||||
volumes:
|
|
||||||
- firefly_iii_db:/var/lib/mysql
|
|
||||||
networks:
|
|
||||||
- dokploy-network
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
firefly_iii_db:
|
|
||||||
|
|
||||||
networks:
|
|
||||||
dokploy-network:
|
|
||||||
external: true
|
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
services:
|
services:
|
||||||
gitea-mirror:
|
gitea-mirror:
|
||||||
image: ghcr.io/raylabshq/gitea-mirror:v3.40.3
|
image: ghcr.io/raylabshq/gitea-mirror:v3.46.0
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
healthcheck:
|
healthcheck:
|
||||||
test: ["CMD", "wget", "--no-verbose", "--tries=3", "--spider", "http://localhost:4321/api/health"]
|
test: ["CMD", "wget", "--no-verbose", "--tries=3", "--spider", "http://localhost:4321/api/health"]
|
||||||
|
|||||||
@@ -1,13 +1,11 @@
|
|||||||
services:
|
services:
|
||||||
immich-server:
|
immich-server:
|
||||||
image: ghcr.io/immich-app/immich-server:v3.2.2
|
image: ghcr.io/immich-app/immich-server:v3.3.5
|
||||||
deploy:
|
deploy:
|
||||||
resources:
|
resources:
|
||||||
limits:
|
limits:
|
||||||
cpus: "1.25"
|
cpus: "1.25"
|
||||||
memory: 2G
|
memory: 2G
|
||||||
labels:
|
|
||||||
- rclone.storage=storagebox-crypt
|
|
||||||
volumes:
|
volumes:
|
||||||
- type: bind
|
- type: bind
|
||||||
source: /opt/media/storagebox/immich/library
|
source: /opt/media/storagebox/immich/library
|
||||||
@@ -40,7 +38,7 @@ services:
|
|||||||
test:
|
test:
|
||||||
[
|
[
|
||||||
"CMD-SHELL",
|
"CMD-SHELL",
|
||||||
"curl -f http://localhost:2283/api/server/ping >/dev/null 2>&1 && timeout 10 ls /usr/src/app/upload >/dev/null 2>&1 || exit 1"
|
"curl -f http://localhost:2283/api/server/ping >/dev/null 2>&1"
|
||||||
]
|
]
|
||||||
interval: 30s
|
interval: 30s
|
||||||
timeout: 15s
|
timeout: 15s
|
||||||
@@ -48,7 +46,7 @@ services:
|
|||||||
start_period: 60s
|
start_period: 60s
|
||||||
|
|
||||||
immich-machine-learning:
|
immich-machine-learning:
|
||||||
image: ghcr.io/immich-app/immich-machine-learning:v3.1.0
|
image: ghcr.io/immich-app/immich-machine-learning:v3.3.1
|
||||||
deploy:
|
deploy:
|
||||||
resources:
|
resources:
|
||||||
limits:
|
limits:
|
||||||
@@ -84,7 +82,7 @@ services:
|
|||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
|
||||||
immich-database:
|
immich-database:
|
||||||
image: ghcr.io/immich-app/postgres:16-vectorchord0.4.3-pgvectors0.2.0
|
image: ghcr.io/immich-app/postgres:14-vectorchord0.4.3-pgvectors0.2.0
|
||||||
deploy:
|
deploy:
|
||||||
resources:
|
resources:
|
||||||
limits:
|
limits:
|
||||||
|
|||||||
@@ -1,13 +1,11 @@
|
|||||||
services:
|
services:
|
||||||
mealie:
|
mealie:
|
||||||
image: ghcr.io/mealie-recipes/mealie:v3.25.1
|
image: ghcr.io/mealie-recipes/mealie:v3.29.0
|
||||||
deploy:
|
deploy:
|
||||||
resources:
|
resources:
|
||||||
limits:
|
limits:
|
||||||
cpus: "1.0"
|
cpus: "1.0"
|
||||||
memory: 1G
|
memory: 1G
|
||||||
labels:
|
|
||||||
- rclone.storage=storagebox-crypt
|
|
||||||
volumes:
|
volumes:
|
||||||
- type: bind
|
- type: bind
|
||||||
source: /opt/media/storagebox/mealie
|
source: /opt/media/storagebox/mealie
|
||||||
@@ -15,16 +13,6 @@ services:
|
|||||||
bind:
|
bind:
|
||||||
propagation: rslave
|
propagation: rslave
|
||||||
create_host_path: false
|
create_host_path: false
|
||||||
healthcheck:
|
|
||||||
test:
|
|
||||||
[
|
|
||||||
"CMD-SHELL",
|
|
||||||
"timeout 10 ls /app/data >/dev/null 2>&1 || exit 1"
|
|
||||||
]
|
|
||||||
interval: 30s
|
|
||||||
timeout: 15s
|
|
||||||
retries: 3
|
|
||||||
start_period: 60s
|
|
||||||
environment:
|
environment:
|
||||||
PUID: 1000
|
PUID: 1000
|
||||||
PGID: 1000
|
PGID: 1000
|
||||||
|
|||||||
@@ -8,7 +8,6 @@ services:
|
|||||||
memory: 2G
|
memory: 2G
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
labels:
|
labels:
|
||||||
- rclone.storage=storagebox-crypt
|
|
||||||
- traefik.http.middlewares.nextcloud-buffering.buffering.maxRequestBodyBytes=0
|
- traefik.http.middlewares.nextcloud-buffering.buffering.maxRequestBodyBytes=0
|
||||||
- traefik.http.routers.nextcloud.middlewares=nextcloud-buffering
|
- traefik.http.routers.nextcloud.middlewares=nextcloud-buffering
|
||||||
volumes:
|
volumes:
|
||||||
@@ -19,16 +18,6 @@ services:
|
|||||||
bind:
|
bind:
|
||||||
propagation: rslave
|
propagation: rslave
|
||||||
create_host_path: false
|
create_host_path: false
|
||||||
healthcheck:
|
|
||||||
test:
|
|
||||||
[
|
|
||||||
"CMD-SHELL",
|
|
||||||
"timeout 10 ls /mnt/storagebox >/dev/null 2>&1 || exit 1"
|
|
||||||
]
|
|
||||||
interval: 30s
|
|
||||||
timeout: 15s
|
|
||||||
retries: 3
|
|
||||||
start_period: 60s
|
|
||||||
environment:
|
environment:
|
||||||
- NEXTCLOUD_TRUSTED_DOMAINS=${NEXTCLOUD_DOMAIN}
|
- NEXTCLOUD_TRUSTED_DOMAINS=${NEXTCLOUD_DOMAIN}
|
||||||
- MYSQL_HOST=nextcloud_db
|
- MYSQL_HOST=nextcloud_db
|
||||||
|
|||||||
@@ -0,0 +1,26 @@
|
|||||||
|
# [ntfy](https://ntfy.sh)
|
||||||
|
|
||||||
|
## ntfy
|
||||||
|
|
||||||
|
### General
|
||||||
|
|
||||||
|
- Compose Path: `./projects/ntfy/docker-compose.yml`
|
||||||
|
|
||||||
|
### Environment
|
||||||
|
|
||||||
|
- NTFY_HOST: `https://ntfy.example.com`
|
||||||
|
- HTTP_PORT: `80`
|
||||||
|
- TZ: `Europe/Berlin`
|
||||||
|
|
||||||
|
### Domains
|
||||||
|
|
||||||
|
- Service Name: `ntfy`
|
||||||
|
- Container Port: `80`
|
||||||
|
- HTTPS: `true`
|
||||||
|
- Certificate Provider: `Let's Encrypt`
|
||||||
|
|
||||||
|
### Notes
|
||||||
|
|
||||||
|
- ntfy stores persistent state in the `ntfy_data` volume.
|
||||||
|
- Set `NTFY_BASE_URL` to the public URL used by your reverse proxy.
|
||||||
|
- If you want authentication, configure the ntfy auth db or add a custom wrapper config.
|
||||||
@@ -0,0 +1,35 @@
|
|||||||
|
services:
|
||||||
|
ntfy:
|
||||||
|
image: binwiederhier/ntfy:v2.34
|
||||||
|
restart: unless-stopped
|
||||||
|
command:
|
||||||
|
- serve
|
||||||
|
environment:
|
||||||
|
NTFY_BASE_URL: https://${NTFY_HOST}
|
||||||
|
NTFY_LISTEN_HTTP: ":${HTTP_PORT}"
|
||||||
|
NTFY_BEHIND_PROXY: "true"
|
||||||
|
NTFY_AUTH_FILE: /var/lib/ntfy/user.db
|
||||||
|
NTFY_AUTH_DEFAULT_ACCESS: deny-all
|
||||||
|
NTFY_ENABLE_LOGIN: "true"
|
||||||
|
NTFY_REQUIRE_LOGIN: "true"
|
||||||
|
NTFY_CACHE_FILE: /var/cache/ntfy/cache.db
|
||||||
|
NTFY_CACHE_DURATION: 24h
|
||||||
|
NTFY_UPSTREAM_BASE_URL: https://ntfy.sh
|
||||||
|
TZ: ${TZ}
|
||||||
|
expose:
|
||||||
|
- "${HTTP_PORT}"
|
||||||
|
volumes:
|
||||||
|
- ntfy-data:/var/lib/ntfy
|
||||||
|
- ntfy-cache:/var/cache/ntfy
|
||||||
|
- ../files/server.yml:/etc/ntfy/server.yml:ro
|
||||||
|
- ../files/templates:/etc/ntfy/templates:ro
|
||||||
|
healthcheck:
|
||||||
|
test: ["CMD-SHELL", "wget -q --tries=1 http://localhost:${HTTP_PORT}/v1/health -O - | grep -Eo '\"healthy\"\\s*:\\s*true' || exit 1"]
|
||||||
|
interval: 60s
|
||||||
|
timeout: 10s
|
||||||
|
retries: 3
|
||||||
|
start_period: 40s
|
||||||
|
|
||||||
|
volumes:
|
||||||
|
ntfy-data:
|
||||||
|
ntfy-cache:
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
services:
|
services:
|
||||||
paperless:
|
paperless:
|
||||||
image: ghcr.io/paperless-ngx/paperless-ngx:3.2.1
|
image: ghcr.io/paperless-ngx/paperless-ngx:3.3.4
|
||||||
deploy:
|
deploy:
|
||||||
resources:
|
resources:
|
||||||
limits:
|
limits:
|
||||||
@@ -8,8 +8,6 @@ services:
|
|||||||
memory: 1.5G
|
memory: 1.5G
|
||||||
container_name: paperless
|
container_name: paperless
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
labels:
|
|
||||||
- rclone.storage=storagebox-crypt
|
|
||||||
volumes:
|
volumes:
|
||||||
- type: bind
|
- type: bind
|
||||||
source: /opt/media/storagebox/paperless/data
|
source: /opt/media/storagebox/paperless/data
|
||||||
@@ -53,7 +51,7 @@ services:
|
|||||||
test:
|
test:
|
||||||
[
|
[
|
||||||
"CMD-SHELL",
|
"CMD-SHELL",
|
||||||
"curl -f http://localhost:8000 >/dev/null 2>&1 && timeout 10 ls /usr/src/paperless/consume >/dev/null 2>&1 || exit 1"
|
"curl -f http://localhost:8000 >/dev/null 2>&1"
|
||||||
]
|
]
|
||||||
interval: 30s
|
interval: 30s
|
||||||
timeout: 15s
|
timeout: 15s
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
services:
|
services:
|
||||||
rclone-seedbox:
|
rclone-seedbox:
|
||||||
image: rclone/rclone:1.75.1
|
image: rclone/rclone:1.75.2
|
||||||
container_name: rclone-seedbox
|
container_name: rclone-seedbox
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
|
||||||
@@ -58,7 +58,7 @@ services:
|
|||||||
start_period: 60s
|
start_period: 60s
|
||||||
|
|
||||||
rclone-storagebox-crypt:
|
rclone-storagebox-crypt:
|
||||||
image: rclone/rclone:1.75.1
|
image: rclone/rclone:1.75.2
|
||||||
container_name: rclone-storagebox-crypt
|
container_name: rclone-storagebox-crypt
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
|
||||||
@@ -101,14 +101,3 @@ services:
|
|||||||
- /opt/rclone/ssh:/root/.ssh:ro
|
- /opt/rclone/ssh:/root/.ssh:ro
|
||||||
- /opt/media/storagebox:/data:rshared
|
- /opt/media/storagebox:/data:rshared
|
||||||
- ./logs/storagebox:/logs
|
- ./logs/storagebox:/logs
|
||||||
|
|
||||||
healthcheck:
|
|
||||||
test:
|
|
||||||
[
|
|
||||||
"CMD-SHELL",
|
|
||||||
"timeout 10 ls /data >/dev/null 2>&1 || exit 1"
|
|
||||||
]
|
|
||||||
interval: 30s
|
|
||||||
timeout: 15s
|
|
||||||
retries: 3
|
|
||||||
start_period: 60s
|
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
services:
|
services:
|
||||||
seerr:
|
seerr:
|
||||||
image: ghcr.io/seerr-team/seerr:v3.5.0
|
image: ghcr.io/seerr-team/seerr:v3.5.1
|
||||||
init: true
|
init: true
|
||||||
container_name: seerr
|
container_name: seerr
|
||||||
environment:
|
environment:
|
||||||
|
|||||||
@@ -0,0 +1,20 @@
|
|||||||
|
# [Uptime Kuma](https://github.com/louislam/uptime-kuma)
|
||||||
|
|
||||||
|
## uptime-kuma
|
||||||
|
|
||||||
|
### General
|
||||||
|
|
||||||
|
- Compose Path: `./projects/uptime-kuma/docker-compose.yml`
|
||||||
|
|
||||||
|
### Domains
|
||||||
|
|
||||||
|
- Service Name: `uptime-kuma`
|
||||||
|
- Container Port: `3001`
|
||||||
|
- HTTPS: `true`
|
||||||
|
- Certificate Provider: `Let's Encrypt`
|
||||||
|
|
||||||
|
### Notes
|
||||||
|
|
||||||
|
- The container persists its data in the `uptime_kuma_data` volume.
|
||||||
|
- Expose the service through Dokploy using the generated hostname.
|
||||||
|
- The default web UI is available on port `3001` inside the container.
|
||||||
@@ -0,0 +1,10 @@
|
|||||||
|
services:
|
||||||
|
uptime-kuma:
|
||||||
|
image: louislam/uptime-kuma:2.5.7
|
||||||
|
restart: always
|
||||||
|
volumes:
|
||||||
|
- uptime-kuma-data:/app/data
|
||||||
|
- /var/run/docker.sock:/var/run/docker.sock
|
||||||
|
|
||||||
|
volumes:
|
||||||
|
uptime-kuma-data:
|
||||||
@@ -0,0 +1,21 @@
|
|||||||
|
# [Wallos](https://github.com/ellite/Wallos)
|
||||||
|
|
||||||
|
## Wallos
|
||||||
|
|
||||||
|
### General
|
||||||
|
|
||||||
|
- Compose Path: `./projects/wallos/docker-compose.yml`
|
||||||
|
|
||||||
|
### Domains
|
||||||
|
|
||||||
|
- Service Name: `wallos`
|
||||||
|
- Container Port: `80`
|
||||||
|
- HTTPS: `true`
|
||||||
|
- Certificate Provider: `Let's Encrypt`
|
||||||
|
|
||||||
|
### Volume Backups
|
||||||
|
|
||||||
|
- Service Name: `wallos`
|
||||||
|
- Volumes: `wallos-wallos_db-xxx`, `wallos-wallos_logos-xxx`
|
||||||
|
- Keep Latest Backups: `7`
|
||||||
|
- Enabled: `true`
|
||||||
@@ -0,0 +1,15 @@
|
|||||||
|
services:
|
||||||
|
wallos:
|
||||||
|
image: bellamy/wallos:5.10.1
|
||||||
|
expose:
|
||||||
|
- '80'
|
||||||
|
environment:
|
||||||
|
TZ: 'Europe/Berlin'
|
||||||
|
volumes:
|
||||||
|
- wallos_db:/var/www/html/db
|
||||||
|
- wallos_logos:/var/www/html/images/uploads/logos
|
||||||
|
restart: unless-stopped
|
||||||
|
|
||||||
|
volumes:
|
||||||
|
wallos_db:
|
||||||
|
wallos_logos:
|
||||||
Reference in New Issue
Block a user