This commit is contained in:
Sparky
2025-10-09 21:59:29 +01:00
parent 075a636b11
commit 553719d7f6
25 changed files with 934 additions and 0 deletions

1
.gitignore vendored
View File

@@ -14,3 +14,4 @@ syncthing-bigbox/index-v2
coolify/sentinel
syncthing-sparky/index-v2
syncthing-sparky/index-v0.14.0.db-migrated
coolify/services/sowk04gs00g444ks4ccs4sw0/data/docker/registry/v2

View File

@@ -0,0 +1,6 @@
SERVICE_NAME_PASTEFY_MARIADB=pastefy-mariadb
SERVICE_NAME_PASTEFY=pastefy
SERVICE_FQDN_PASTEFY=pastefy.site.quack-lab.dev
SERVICE_FQDN_PASTEFY_80=pastefy.site.quack-lab.dev
SERVICE_URL_PASTEFY=https://pastefy.site.quack-lab.dev
SERVICE_URL_PASTEFY_80=https://pastefy.site.quack-lab.dev

View File

@@ -0,0 +1,99 @@
services:
pastefy-mariadb:
image: 'mariadb:10.11'
environment:
MYSQL_ROOT_PASSWORD: UkqK4lDXSp<2l4Pk
MYSQL_DATABASE: pastefy
MYSQL_USER: pastefy
MYSQL_PASSWORD: UkqK4lDXSp<2l4Pk
COOLIFY_RESOURCE_UUID: a0s8ow8sso8k4ok84kww0sw4
COOLIFY_CONTAINER_NAME: pastefy-mariadb-a0s8ow8sso8k4ok84kww0sw4
SERVICE_NAME_PASTEFY_MARIADB: pastefy-mariadb
SERVICE_NAME_PASTEFY: pastefy
volumes:
- '/mnt/data/docker/volumes/captain--pastefy-db-data/_data:/var/lib/mysql'
container_name: pastefy-mariadb-a0s8ow8sso8k4ok84kww0sw4
restart: unless-stopped
labels:
- coolify.managed=true
- coolify.version=4.0.0-beta.434
- coolify.serviceId=15
- coolify.type=service
- coolify.name=pastefy-mariadb-a0s8ow8sso8k4ok84kww0sw4
- coolify.resourceName=pastefy
- coolify.projectName=services
- coolify.serviceName=pastefy-mariadb
- coolify.environmentName=production
- coolify.pullRequestId=0
- coolify.service.subId=4
- coolify.service.subType=database
- coolify.service.subName=pastefy-mariadb
networks:
a0s8ow8sso8k4ok84kww0sw4: null
pastefy:
image: 'interaapps/pastefy:latest'
environment:
HTTP_SERVER_PORT: '80'
HTTP_SERVER_CORS: '*'
DATABASE_DRIVER: mysql
DATABASE_NAME: pastefy
DATABASE_USER: pastefy
DATABASE_PASSWORD: UkqK4lDXSp<2l4Pk
DATABASE_HOST: pastefy-mariadb
DATABASE_PORT: '3306'
SERVER_NAME: 'https://pastefy.site.quack-lab.dev'
_OAUTH2_DISCORD_CLIENT_ID: '1247220490779754527'
_OAUTH2_DISCORD_CLIENT_SECRET: 2de443fa04f23bab08fec4fc829d640b7bcff8362b39424b765ad62c40716922
COOLIFY_RESOURCE_UUID: a0s8ow8sso8k4ok84kww0sw4
COOLIFY_CONTAINER_NAME: pastefy-a0s8ow8sso8k4ok84kww0sw4
COOLIFY_FQDN: pastefy.site.quack-lab.dev
COOLIFY_URL: 'https://pastefy.site.quack-lab.dev'
SERVICE_NAME_PASTEFY_MARIADB: pastefy-mariadb
SERVICE_NAME_PASTEFY: pastefy
container_name: pastefy-a0s8ow8sso8k4ok84kww0sw4
restart: unless-stopped
labels:
- coolify.managed=true
- coolify.version=4.0.0-beta.434
- coolify.serviceId=15
- coolify.type=service
- coolify.name=pastefy-a0s8ow8sso8k4ok84kww0sw4
- coolify.resourceName=pastefy
- coolify.projectName=services
- coolify.serviceName=pastefy
- coolify.environmentName=production
- coolify.pullRequestId=0
- coolify.service.subId=20
- coolify.service.subType=application
- coolify.service.subName=pastefy
- traefik.enable=true
- traefik.http.middlewares.gzip.compress=true
- traefik.http.middlewares.redirect-to-https.redirectscheme.scheme=https
- traefik.http.routers.http-0-a0s8ow8sso8k4ok84kww0sw4-pastefy.entryPoints=http
- traefik.http.routers.http-0-a0s8ow8sso8k4ok84kww0sw4-pastefy.middlewares=redirect-to-https
- 'traefik.http.routers.http-0-a0s8ow8sso8k4ok84kww0sw4-pastefy.rule=Host(`pastefy.site.quack-lab.dev`) && PathPrefix(`/`)'
- traefik.http.routers.http-0-a0s8ow8sso8k4ok84kww0sw4-pastefy.service=http-0-a0s8ow8sso8k4ok84kww0sw4-pastefy
- traefik.http.routers.https-0-a0s8ow8sso8k4ok84kww0sw4-pastefy.entryPoints=https
- traefik.http.routers.https-0-a0s8ow8sso8k4ok84kww0sw4-pastefy.middlewares=gzip
- 'traefik.http.routers.https-0-a0s8ow8sso8k4ok84kww0sw4-pastefy.rule=Host(`pastefy.site.quack-lab.dev`) && PathPrefix(`/`)'
- traefik.http.routers.https-0-a0s8ow8sso8k4ok84kww0sw4-pastefy.service=https-0-a0s8ow8sso8k4ok84kww0sw4-pastefy
- traefik.http.routers.https-0-a0s8ow8sso8k4ok84kww0sw4-pastefy.tls.certresolver=letsencrypt
- traefik.http.routers.https-0-a0s8ow8sso8k4ok84kww0sw4-pastefy.tls=true
- traefik.http.services.http-0-a0s8ow8sso8k4ok84kww0sw4-pastefy.loadbalancer.server.port=80
- traefik.http.services.https-0-a0s8ow8sso8k4ok84kww0sw4-pastefy.loadbalancer.server.port=80
- 'caddy_0.encode=zstd gzip'
- 'caddy_0.handle_path.0_reverse_proxy={{upstreams 80}}'
- 'caddy_0.handle_path=/*'
- caddy_0.header=-Server
- 'caddy_0.try_files={path} /index.html /index.php'
- 'caddy_0=https://pastefy.site.quack-lab.dev'
- caddy_ingress_network=a0s8ow8sso8k4ok84kww0sw4
networks:
a0s8ow8sso8k4ok84kww0sw4: null
volumes: { }
networks:
a0s8ow8sso8k4ok84kww0sw4:
name: a0s8ow8sso8k4ok84kww0sw4
external: true
configs: { }
secrets: { }

View File

@@ -0,0 +1,10 @@
SERVICE_NAME_QBIT=qbit
SERVICE_FQDN_QBIT=torrent.site.quack-lab.dev
SERVICE_FQDN_QBIT_8080=torrent.site.quack-lab.dev
SERVICE_URL_QBIT=https://torrent.site.quack-lab.dev
SERVICE_URL_QBIT_8080=https://torrent.site.quack-lab.dev
SERVICE_URL_QBITORRENT=https://torrent.site.quack-lab.dev
QBIT_BASE=${SERVICE_URL_QBITORRENT}
RELEASE_TYPE=stable
UPDATE_VT_CRON=\"0 * * * *\"
WEBUI_PORT=8080

View File

@@ -0,0 +1,73 @@
services:
qbit:
image: linuxserver/qbittorrent
environment:
WEBUI_PORT: '${WEBUI_PORT:-8080}'
PUID: '1000'
PGID: '1000'
SERVICE_URL_QBITORRENT: 'https://torrent.site.quack-lab.dev'
COOLIFY_RESOURCE_UUID: c4s0kc8ccc8804owcgwkwwgc
COOLIFY_CONTAINER_NAME: qbit-c4s0kc8ccc8804owcgwkwwgc
COOLIFY_FQDN: torrent.site.quack-lab.dev
COOLIFY_URL: 'https://torrent.site.quack-lab.dev'
SERVICE_NAME_QBIT: qbit
volumes:
- '/mnt/data/docker/volumes/captain--torrent-downloads/_data:/downloads'
- '/mnt/data/docker/volumes/captain--torrent-config/_data:/config'
healthcheck:
test:
- CMD
- wget
- '-q'
- '--spider'
- 'http://127.0.0.1:8080/'
interval: 5s
timeout: 20s
retries: 10
container_name: qbit-c4s0kc8ccc8804owcgwkwwgc
restart: unless-stopped
labels:
- coolify.managed=true
- coolify.version=4.0.0-beta.434
- coolify.serviceId=25
- coolify.type=service
- coolify.name=qbit-c4s0kc8ccc8804owcgwkwwgc
- coolify.resourceName=torrent
- coolify.projectName=services
- coolify.serviceName=qbit
- coolify.environmentName=production
- coolify.pullRequestId=0
- coolify.service.subId=31
- coolify.service.subType=application
- coolify.service.subName=qbit
- traefik.enable=true
- traefik.http.middlewares.gzip.compress=true
- traefik.http.middlewares.redirect-to-https.redirectscheme.scheme=https
- traefik.http.routers.http-0-c4s0kc8ccc8804owcgwkwwgc-qbit.entryPoints=http
- traefik.http.routers.http-0-c4s0kc8ccc8804owcgwkwwgc-qbit.middlewares=redirect-to-https
- 'traefik.http.routers.http-0-c4s0kc8ccc8804owcgwkwwgc-qbit.rule=Host(`torrent.site.quack-lab.dev`) && PathPrefix(`/`)'
- traefik.http.routers.http-0-c4s0kc8ccc8804owcgwkwwgc-qbit.service=http-0-c4s0kc8ccc8804owcgwkwwgc-qbit
- traefik.http.routers.https-0-c4s0kc8ccc8804owcgwkwwgc-qbit.entryPoints=https
- traefik.http.routers.https-0-c4s0kc8ccc8804owcgwkwwgc-qbit.middlewares=gzip
- 'traefik.http.routers.https-0-c4s0kc8ccc8804owcgwkwwgc-qbit.rule=Host(`torrent.site.quack-lab.dev`) && PathPrefix(`/`)'
- traefik.http.routers.https-0-c4s0kc8ccc8804owcgwkwwgc-qbit.service=https-0-c4s0kc8ccc8804owcgwkwwgc-qbit
- traefik.http.routers.https-0-c4s0kc8ccc8804owcgwkwwgc-qbit.tls.certresolver=letsencrypt
- traefik.http.routers.https-0-c4s0kc8ccc8804owcgwkwwgc-qbit.tls=true
- traefik.http.services.http-0-c4s0kc8ccc8804owcgwkwwgc-qbit.loadbalancer.server.port=8080
- traefik.http.services.https-0-c4s0kc8ccc8804owcgwkwwgc-qbit.loadbalancer.server.port=8080
- 'caddy_0.encode=zstd gzip'
- 'caddy_0.handle_path.0_reverse_proxy={{upstreams 8080}}'
- 'caddy_0.handle_path=/*'
- caddy_0.header=-Server
- 'caddy_0.try_files={path} /index.html /index.php'
- 'caddy_0=https://torrent.site.quack-lab.dev'
- caddy_ingress_network=c4s0kc8ccc8804owcgwkwwgc
networks:
c4s0kc8ccc8804owcgwkwwgc: null
volumes: { }
networks:
c4s0kc8ccc8804owcgwkwwgc:
name: c4s0kc8ccc8804owcgwkwwgc
external: true
configs: { }
secrets: { }

View File

@@ -0,0 +1,15 @@
SERVICE_NAME_ZIPLINE=zipline
SERVICE_NAME_POSTGRES=postgres
SERVICE_FQDN_ZIPLINE=zipline.site.quack-lab.dev
SERVICE_FQDN_ZIPLINE_3000=zipline.site.quack-lab.dev
SERVICE_PASSWORD_64_ZIPLINE=MoQ4mPOLiIWdOB3DlTXpMzgbRkvesUQciRNeZvSh4tS30KRDNFDFFGQXoXmwhFkI
SERVICE_PASSWORD_POSTGRES=5bMuZf4bpEs4P78RRiC5YRkPEJ45i4sT5Z7HKwC8
SERVICE_URL_ZIPLINE=https://zipline.site.quack-lab.dev
SERVICE_URL_ZIPLINE_3000=https://zipline.site.quack-lab.dev
SERVICE_USER_POSTGRES=zipline
CORE_SECRET=${SERVICE_PASSWORD_64_ZIPLINE}
POSTGRES_PASSWORD=${SERVICE_PASSWORD_POSTGRES}
POSTGRES_USER=${SERVICE_USER_POSTGRES}
CORE_LOGGER=true
CORE_RETURN_HTTPS=false
POSTGRES_DB=postgres

View File

@@ -0,0 +1,116 @@
services:
zipline:
image: 'ghcr.io/diced/zipline:latest'
environment:
SERVICE_URL_ZIPLINE_3000: 'https://zipline.site.quack-lab.dev'
CORE_RETURN_HTTPS: '${CORE_RETURN_HTTPS:-false}'
CORE_SECRET: '${SERVICE_PASSWORD_64_ZIPLINE}'
DATABASE_URL: 'postgres://${SERVICE_USER_POSTGRES}:${SERVICE_PASSWORD_POSTGRES}@postgres/${POSTGRES_DB:-zipline-db}'
CORE_LOGGER: '${CORE_LOGGER:-true}'
COOLIFY_RESOURCE_UUID: gc4gcw4kks8ko8coo8woc8ko
COOLIFY_CONTAINER_NAME: zipline-gc4gcw4kks8ko8coo8woc8ko
COOLIFY_FQDN: zipline.site.quack-lab.dev
COOLIFY_URL: 'https://zipline.site.quack-lab.dev'
SERVICE_NAME_ZIPLINE: zipline
SERVICE_NAME_POSTGRES: postgres
volumes:
- '/mnt/data/docker/volumes/captain--zipline-uploads/_data:/zipline/uploads'
- '/mnt/data/docker/volumes/captain--zipline-public/_data:/zipline/public'
- '/mnt/data/docker/volumes/captain--zipline-themes/_data:/zipline/themes'
depends_on:
postgres:
condition: service_healthy
healthcheck:
test:
- CMD
- wget
- '-q'
- '--spider'
- 'http://127.0.0.1:3000/auth/login'
interval: 5s
timeout: 20s
retries: 10
container_name: zipline-gc4gcw4kks8ko8coo8woc8ko
restart: unless-stopped
labels:
- coolify.managed=true
- coolify.version=4.0.0-beta.434
- coolify.serviceId=24
- coolify.type=service
- coolify.name=zipline-gc4gcw4kks8ko8coo8woc8ko
- coolify.resourceName=zipline
- coolify.projectName=services
- coolify.serviceName=zipline
- coolify.environmentName=production
- coolify.pullRequestId=0
- coolify.service.subId=30
- coolify.service.subType=application
- coolify.service.subName=zipline
- traefik.enable=true
- traefik.http.middlewares.gzip.compress=true
- traefik.http.middlewares.redirect-to-https.redirectscheme.scheme=https
- traefik.http.routers.http-0-gc4gcw4kks8ko8coo8woc8ko-zipline.entryPoints=http
- traefik.http.routers.http-0-gc4gcw4kks8ko8coo8woc8ko-zipline.middlewares=redirect-to-https
- 'traefik.http.routers.http-0-gc4gcw4kks8ko8coo8woc8ko-zipline.rule=Host(`zipline.site.quack-lab.dev`) && PathPrefix(`/`)'
- traefik.http.routers.http-0-gc4gcw4kks8ko8coo8woc8ko-zipline.service=http-0-gc4gcw4kks8ko8coo8woc8ko-zipline
- traefik.http.routers.https-0-gc4gcw4kks8ko8coo8woc8ko-zipline.entryPoints=https
- traefik.http.routers.https-0-gc4gcw4kks8ko8coo8woc8ko-zipline.middlewares=gzip
- 'traefik.http.routers.https-0-gc4gcw4kks8ko8coo8woc8ko-zipline.rule=Host(`zipline.site.quack-lab.dev`) && PathPrefix(`/`)'
- traefik.http.routers.https-0-gc4gcw4kks8ko8coo8woc8ko-zipline.service=https-0-gc4gcw4kks8ko8coo8woc8ko-zipline
- traefik.http.routers.https-0-gc4gcw4kks8ko8coo8woc8ko-zipline.tls.certresolver=letsencrypt
- traefik.http.routers.https-0-gc4gcw4kks8ko8coo8woc8ko-zipline.tls=true
- traefik.http.services.http-0-gc4gcw4kks8ko8coo8woc8ko-zipline.loadbalancer.server.port=3000
- traefik.http.services.https-0-gc4gcw4kks8ko8coo8woc8ko-zipline.loadbalancer.server.port=3000
- 'caddy_0.encode=zstd gzip'
- 'caddy_0.handle_path.0_reverse_proxy={{upstreams 3000}}'
- 'caddy_0.handle_path=/*'
- caddy_0.header=-Server
- 'caddy_0.try_files={path} /index.html /index.php'
- 'caddy_0=https://zipline.site.quack-lab.dev'
- caddy_ingress_network=gc4gcw4kks8ko8coo8woc8ko
networks:
gc4gcw4kks8ko8coo8woc8ko: null
postgres:
image: 'postgres:17-alpine'
volumes:
- '/mnt/data/docker/volumes/captain--zipline-pg-data/_data:/var/lib/postgresql/data'
environment:
POSTGRES_USER: '${SERVICE_USER_POSTGRES}'
POSTGRES_PASSWORD: '${SERVICE_PASSWORD_POSTGRES}'
POSTGRES_DB: '${POSTGRES_DB:-zipline-db}'
COOLIFY_RESOURCE_UUID: gc4gcw4kks8ko8coo8woc8ko
COOLIFY_CONTAINER_NAME: postgres-gc4gcw4kks8ko8coo8woc8ko
SERVICE_NAME_ZIPLINE: zipline
SERVICE_NAME_POSTGRES: postgres
healthcheck:
test:
- CMD-SHELL
- 'pg_isready -U $${POSTGRES_USER} -d $${POSTGRES_DB}'
interval: 5s
timeout: 20s
retries: 10
container_name: postgres-gc4gcw4kks8ko8coo8woc8ko
restart: unless-stopped
labels:
- coolify.managed=true
- coolify.version=4.0.0-beta.434
- coolify.serviceId=24
- coolify.type=service
- coolify.name=postgres-gc4gcw4kks8ko8coo8woc8ko
- coolify.resourceName=zipline
- coolify.projectName=services
- coolify.serviceName=postgres
- coolify.environmentName=production
- coolify.pullRequestId=0
- coolify.service.subId=6
- coolify.service.subType=database
- coolify.service.subName=postgres
networks:
gc4gcw4kks8ko8coo8woc8ko: null
volumes: { }
networks:
gc4gcw4kks8ko8coo8woc8ko:
name: gc4gcw4kks8ko8coo8woc8ko
external: true
configs: { }
secrets: { }

View File

@@ -0,0 +1,5 @@
SERVICE_NAME_MEILI_WEB=meili-web
SERVICE_FQDN_MEILI_WEB=meili-web.site.quack-lab.dev
SERVICE_FQDN_MEILI_WEB_24900=meili-web.site.quack-lab.dev
SERVICE_URL_MEILI_WEB=https://meili-web.site.quack-lab.dev
SERVICE_URL_MEILI_WEB_24900=https://meili-web.site.quack-lab.dev

View File

@@ -0,0 +1,56 @@
services:
meili-web:
image: riccoxie/meilisearch-ui
container_name: meili-web-jowsggg8s4gsg4gkwcgoco8s
restart: unless-stopped
labels:
- coolify.managed=true
- coolify.version=4.0.0-beta.434
- coolify.serviceId=19
- coolify.type=service
- coolify.name=meili-web-jowsggg8s4gsg4gkwcgoco8s
- coolify.resourceName=meili-web
- coolify.projectName=services
- coolify.serviceName=meili-web
- coolify.environmentName=production
- coolify.pullRequestId=0
- coolify.service.subId=24
- coolify.service.subType=application
- coolify.service.subName=meili-web
- traefik.enable=true
- traefik.http.middlewares.gzip.compress=true
- traefik.http.middlewares.redirect-to-https.redirectscheme.scheme=https
- traefik.http.routers.http-0-jowsggg8s4gsg4gkwcgoco8s-meili-web.entryPoints=http
- traefik.http.routers.http-0-jowsggg8s4gsg4gkwcgoco8s-meili-web.middlewares=redirect-to-https
- 'traefik.http.routers.http-0-jowsggg8s4gsg4gkwcgoco8s-meili-web.rule=Host(`meili-web.site.quack-lab.dev`) && PathPrefix(`/`)'
- traefik.http.routers.http-0-jowsggg8s4gsg4gkwcgoco8s-meili-web.service=http-0-jowsggg8s4gsg4gkwcgoco8s-meili-web
- traefik.http.routers.https-0-jowsggg8s4gsg4gkwcgoco8s-meili-web.entryPoints=https
- traefik.http.routers.https-0-jowsggg8s4gsg4gkwcgoco8s-meili-web.middlewares=gzip
- 'traefik.http.routers.https-0-jowsggg8s4gsg4gkwcgoco8s-meili-web.rule=Host(`meili-web.site.quack-lab.dev`) && PathPrefix(`/`)'
- traefik.http.routers.https-0-jowsggg8s4gsg4gkwcgoco8s-meili-web.service=https-0-jowsggg8s4gsg4gkwcgoco8s-meili-web
- traefik.http.routers.https-0-jowsggg8s4gsg4gkwcgoco8s-meili-web.tls.certresolver=letsencrypt
- traefik.http.routers.https-0-jowsggg8s4gsg4gkwcgoco8s-meili-web.tls=true
- traefik.http.services.http-0-jowsggg8s4gsg4gkwcgoco8s-meili-web.loadbalancer.server.port=24900
- traefik.http.services.https-0-jowsggg8s4gsg4gkwcgoco8s-meili-web.loadbalancer.server.port=24900
- 'caddy_0.encode=zstd gzip'
- 'caddy_0.handle_path.0_reverse_proxy={{upstreams 24900}}'
- 'caddy_0.handle_path=/*'
- caddy_0.header=-Server
- 'caddy_0.try_files={path} /index.html /index.php'
- 'caddy_0=https://meili-web.site.quack-lab.dev'
- caddy_ingress_network=jowsggg8s4gsg4gkwcgoco8s
networks:
jowsggg8s4gsg4gkwcgoco8s: null
environment:
COOLIFY_RESOURCE_UUID: jowsggg8s4gsg4gkwcgoco8s
COOLIFY_CONTAINER_NAME: meili-web-jowsggg8s4gsg4gkwcgoco8s
COOLIFY_FQDN: meili-web.site.quack-lab.dev
COOLIFY_URL: 'https://meili-web.site.quack-lab.dev'
SERVICE_NAME_MEILI_WEB: meili-web
volumes: { }
networks:
jowsggg8s4gsg4gkwcgoco8s:
name: jowsggg8s4gsg4gkwcgoco8s
external: true
configs: { }
secrets: { }

View File

@@ -0,0 +1,6 @@
SERVICE_NAME_JELLYFIN=jellyfin
SERVICE_FQDN_JELLYFIN=jelly.site.quack-lab.dev
SERVICE_FQDN_JELLYFIN_8096=jelly.site.quack-lab.dev
SERVICE_URL_JELLYFIN=https://jelly.site.quack-lab.dev
SERVICE_URL_JELLYFIN_8096=https://jelly.site.quack-lab.dev
JELLYFIN_PublishedServerUrl=$SERVICE_URL_JELLYFIN

View File

@@ -0,0 +1,74 @@
services:
jellyfin:
image: 'lscr.io/linuxserver/jellyfin:latest'
environment:
SERVICE_URL_JELLYFIN_8096: 'https://jelly.site.quack-lab.dev'
PUID: '1000'
PGID: '1000'
TZ: Europe/Madrid
JELLYFIN_PublishedServerUrl: $SERVICE_URL_JELLYFIN
COOLIFY_RESOURCE_UUID: lk80c008kwwkkg0gg44ccw8c
COOLIFY_CONTAINER_NAME: jellyfin-lk80c008kwwkkg0gg44ccw8c
COOLIFY_FQDN: jelly.site.quack-lab.dev
COOLIFY_URL: 'https://jelly.site.quack-lab.dev'
SERVICE_NAME_JELLYFIN: jellyfin
volumes:
- '/mnt/data/docker/volumes/captain--jelly-config/_data:/config'
- '/mnt/data/docker/volumes/captain--sync-data/_data/Music/Organized:/data/music'
- '/mnt/data/docker/volumes/captain--torrent-downloads/_data/Media:/data/video'
healthcheck:
test:
- CMD
- curl
- '-f'
- 'http://127.0.0.1:8096'
interval: 2s
timeout: 10s
retries: 15
container_name: jellyfin-lk80c008kwwkkg0gg44ccw8c
restart: unless-stopped
labels:
- coolify.managed=true
- coolify.version=4.0.0-beta.434
- coolify.serviceId=17
- coolify.type=service
- coolify.name=jellyfin-lk80c008kwwkkg0gg44ccw8c
- coolify.resourceName=jelly
- coolify.projectName=services
- coolify.serviceName=jellyfin
- coolify.environmentName=production
- coolify.pullRequestId=0
- coolify.service.subId=22
- coolify.service.subType=application
- coolify.service.subName=jellyfin
- traefik.enable=true
- traefik.http.middlewares.gzip.compress=true
- traefik.http.middlewares.redirect-to-https.redirectscheme.scheme=https
- traefik.http.routers.http-0-lk80c008kwwkkg0gg44ccw8c-jellyfin.entryPoints=http
- traefik.http.routers.http-0-lk80c008kwwkkg0gg44ccw8c-jellyfin.middlewares=redirect-to-https
- 'traefik.http.routers.http-0-lk80c008kwwkkg0gg44ccw8c-jellyfin.rule=Host(`jelly.site.quack-lab.dev`) && PathPrefix(`/`)'
- traefik.http.routers.http-0-lk80c008kwwkkg0gg44ccw8c-jellyfin.service=http-0-lk80c008kwwkkg0gg44ccw8c-jellyfin
- traefik.http.routers.https-0-lk80c008kwwkkg0gg44ccw8c-jellyfin.entryPoints=https
- traefik.http.routers.https-0-lk80c008kwwkkg0gg44ccw8c-jellyfin.middlewares=gzip
- 'traefik.http.routers.https-0-lk80c008kwwkkg0gg44ccw8c-jellyfin.rule=Host(`jelly.site.quack-lab.dev`) && PathPrefix(`/`)'
- traefik.http.routers.https-0-lk80c008kwwkkg0gg44ccw8c-jellyfin.service=https-0-lk80c008kwwkkg0gg44ccw8c-jellyfin
- traefik.http.routers.https-0-lk80c008kwwkkg0gg44ccw8c-jellyfin.tls.certresolver=letsencrypt
- traefik.http.routers.https-0-lk80c008kwwkkg0gg44ccw8c-jellyfin.tls=true
- traefik.http.services.http-0-lk80c008kwwkkg0gg44ccw8c-jellyfin.loadbalancer.server.port=8096
- traefik.http.services.https-0-lk80c008kwwkkg0gg44ccw8c-jellyfin.loadbalancer.server.port=8096
- 'caddy_0.encode=zstd gzip'
- 'caddy_0.handle_path.0_reverse_proxy={{upstreams 8096}}'
- 'caddy_0.handle_path=/*'
- caddy_0.header=-Server
- 'caddy_0.try_files={path} /index.html /index.php'
- 'caddy_0=https://jelly.site.quack-lab.dev'
- caddy_ingress_network=lk80c008kwwkkg0gg44ccw8c
networks:
lk80c008kwwkkg0gg44ccw8c: null
volumes: { }
networks:
lk80c008kwwkkg0gg44ccw8c:
name: lk80c008kwwkkg0gg44ccw8c
external: true
configs: { }
secrets: { }

View File

@@ -0,0 +1,5 @@
SERVICE_NAME_POCKETBASE=pocketbase
SERVICE_FQDN_POCKETBASE=pocketbase-shoppinglist.site.quack-lab.dev
SERVICE_FQDN_POCKETBASE_8080=pocketbase-shoppinglist.site.quack-lab.dev
SERVICE_URL_POCKETBASE=https://pocketbase-shoppinglist.site.quack-lab.dev
SERVICE_URL_POCKETBASE_8080=https://pocketbase-shoppinglist.site.quack-lab.dev

View File

@@ -0,0 +1,56 @@
services:
pocketbase:
image: 'ghcr.io/coollabsio/pocketbase:latest'
environment:
SERVICE_URL_POCKETBASE_8080: 'https://pocketbase-shoppinglist.site.quack-lab.dev'
COOLIFY_RESOURCE_UUID: n4skw4w4c0gks404ckgkksck
COOLIFY_CONTAINER_NAME: pocketbase-n4skw4w4c0gks404ckgkksck
COOLIFY_FQDN: pocketbase-shoppinglist.site.quack-lab.dev
COOLIFY_URL: 'https://pocketbase-shoppinglist.site.quack-lab.dev'
SERVICE_NAME_POCKETBASE: pocketbase
volumes:
- '/mnt/data/docker/volumes/captain--pocketbase-shoppinglist-data/_data:/app/pb_data'
container_name: pocketbase-n4skw4w4c0gks404ckgkksck
restart: unless-stopped
labels:
- coolify.managed=true
- coolify.version=4.0.0-beta.434
- coolify.serviceId=22
- coolify.type=service
- coolify.name=pocketbase-n4skw4w4c0gks404ckgkksck
- coolify.resourceName=pocketbase-shoppinglist
- coolify.projectName=services
- coolify.serviceName=pocketbase
- coolify.environmentName=production
- coolify.pullRequestId=0
- coolify.service.subId=28
- coolify.service.subType=application
- coolify.service.subName=pocketbase
- traefik.enable=true
- traefik.http.middlewares.redirect-to-https.redirectscheme.scheme=https
- traefik.http.routers.http-0-n4skw4w4c0gks404ckgkksck-pocketbase.entryPoints=http
- traefik.http.routers.http-0-n4skw4w4c0gks404ckgkksck-pocketbase.middlewares=redirect-to-https
- 'traefik.http.routers.http-0-n4skw4w4c0gks404ckgkksck-pocketbase.rule=Host(`pocketbase-shoppinglist.site.quack-lab.dev`) && PathPrefix(`/`)'
- traefik.http.routers.http-0-n4skw4w4c0gks404ckgkksck-pocketbase.service=http-0-n4skw4w4c0gks404ckgkksck-pocketbase
- traefik.http.routers.https-0-n4skw4w4c0gks404ckgkksck-pocketbase.entryPoints=https
- 'traefik.http.routers.https-0-n4skw4w4c0gks404ckgkksck-pocketbase.rule=Host(`pocketbase-shoppinglist.site.quack-lab.dev`) && PathPrefix(`/`)'
- traefik.http.routers.https-0-n4skw4w4c0gks404ckgkksck-pocketbase.service=https-0-n4skw4w4c0gks404ckgkksck-pocketbase
- traefik.http.routers.https-0-n4skw4w4c0gks404ckgkksck-pocketbase.tls.certresolver=letsencrypt
- traefik.http.routers.https-0-n4skw4w4c0gks404ckgkksck-pocketbase.tls=true
- traefik.http.services.http-0-n4skw4w4c0gks404ckgkksck-pocketbase.loadbalancer.server.port=8080
- traefik.http.services.https-0-n4skw4w4c0gks404ckgkksck-pocketbase.loadbalancer.server.port=8080
- 'caddy_0.handle_path.0_reverse_proxy={{upstreams 8080}}'
- 'caddy_0.handle_path=/*'
- caddy_0.header=-Server
- 'caddy_0.try_files={path} /index.html /index.php'
- 'caddy_0=https://pocketbase-shoppinglist.site.quack-lab.dev'
- caddy_ingress_network=n4skw4w4c0gks404ckgkksck
networks:
n4skw4w4c0gks404ckgkksck: null
volumes: { }
networks:
n4skw4w4c0gks404ckgkksck:
name: n4skw4w4c0gks404ckgkksck
external: true
configs: { }
secrets: { }

View File

@@ -0,0 +1,5 @@
SERVICE_NAME_PORTAINER=portainer
SERVICE_FQDN_PORTAINER=portainer.site.quack-lab.dev
SERVICE_FQDN_PORTAINER_9000=portainer.site.quack-lab.dev
SERVICE_URL_PORTAINER=https://portainer.site.quack-lab.dev
SERVICE_URL_PORTAINER_9000=https://portainer.site.quack-lab.dev

View File

@@ -0,0 +1,67 @@
services:
portainer:
image: 'portainer/portainer-ce:alpine'
environment:
SERVICE_URL_PORTAINER_9000: 'https://portainer.site.quack-lab.dev'
COOLIFY_RESOURCE_UUID: n8k0c0wwww0wssks0s4kgsc0
COOLIFY_CONTAINER_NAME: portainer-n8k0c0wwww0wssks0s4kgsc0
COOLIFY_FQDN: portainer.site.quack-lab.dev
COOLIFY_URL: 'https://portainer.site.quack-lab.dev'
SERVICE_NAME_PORTAINER: portainer
volumes:
- '/var/run/docker.sock:/var/run/docker.sock'
- '/mnt/data/docker/volumes/captain--portainer-data/_data:/data'
healthcheck:
test:
- CMD-SHELL
- 'wget -qO- http://127.0.0.1:9000/'
interval: 20s
timeout: 20s
retries: 10
container_name: portainer-n8k0c0wwww0wssks0s4kgsc0
restart: unless-stopped
labels:
- coolify.managed=true
- coolify.version=4.0.0-beta.434
- coolify.serviceId=14
- coolify.type=service
- coolify.name=portainer-n8k0c0wwww0wssks0s4kgsc0
- coolify.resourceName=portainer
- coolify.projectName=services
- coolify.serviceName=portainer
- coolify.environmentName=production
- coolify.pullRequestId=0
- coolify.service.subId=19
- coolify.service.subType=application
- coolify.service.subName=portainer
- traefik.enable=true
- traefik.http.middlewares.gzip.compress=true
- traefik.http.middlewares.redirect-to-https.redirectscheme.scheme=https
- traefik.http.routers.http-0-n8k0c0wwww0wssks0s4kgsc0-portainer.entryPoints=http
- traefik.http.routers.http-0-n8k0c0wwww0wssks0s4kgsc0-portainer.middlewares=redirect-to-https
- 'traefik.http.routers.http-0-n8k0c0wwww0wssks0s4kgsc0-portainer.rule=Host(`portainer.site.quack-lab.dev`) && PathPrefix(`/`)'
- traefik.http.routers.http-0-n8k0c0wwww0wssks0s4kgsc0-portainer.service=http-0-n8k0c0wwww0wssks0s4kgsc0-portainer
- traefik.http.routers.https-0-n8k0c0wwww0wssks0s4kgsc0-portainer.entryPoints=https
- traefik.http.routers.https-0-n8k0c0wwww0wssks0s4kgsc0-portainer.middlewares=gzip
- 'traefik.http.routers.https-0-n8k0c0wwww0wssks0s4kgsc0-portainer.rule=Host(`portainer.site.quack-lab.dev`) && PathPrefix(`/`)'
- traefik.http.routers.https-0-n8k0c0wwww0wssks0s4kgsc0-portainer.service=https-0-n8k0c0wwww0wssks0s4kgsc0-portainer
- traefik.http.routers.https-0-n8k0c0wwww0wssks0s4kgsc0-portainer.tls.certresolver=letsencrypt
- traefik.http.routers.https-0-n8k0c0wwww0wssks0s4kgsc0-portainer.tls=true
- traefik.http.services.http-0-n8k0c0wwww0wssks0s4kgsc0-portainer.loadbalancer.server.port=9000
- traefik.http.services.https-0-n8k0c0wwww0wssks0s4kgsc0-portainer.loadbalancer.server.port=9000
- 'caddy_0.encode=zstd gzip'
- 'caddy_0.handle_path.0_reverse_proxy={{upstreams 9000}}'
- 'caddy_0.handle_path=/*'
- caddy_0.header=-Server
- 'caddy_0.try_files={path} /index.html /index.php'
- 'caddy_0=https://portainer.site.quack-lab.dev'
- caddy_ingress_network=n8k0c0wwww0wssks0s4kgsc0
networks:
n8k0c0wwww0wssks0s4kgsc0: null
volumes: { }
networks:
n8k0c0wwww0wssks0s4kgsc0:
name: n8k0c0wwww0wssks0s4kgsc0
external: true
configs: { }
secrets: { }

View File

@@ -0,0 +1,5 @@
SERVICE_NAME_POCKETBASE=pocketbase
SERVICE_FQDN_POCKETBASE=evebase.site.quack-lab.dev
SERVICE_FQDN_POCKETBASE_8080=evebase.site.quack-lab.dev
SERVICE_URL_POCKETBASE=https://evebase.site.quack-lab.dev
SERVICE_URL_POCKETBASE_8080=https://evebase.site.quack-lab.dev

View File

@@ -0,0 +1,56 @@
services:
pocketbase:
image: 'ghcr.io/coollabsio/pocketbase:latest'
environment:
SERVICE_URL_POCKETBASE_8080: 'https://evebase.site.quack-lab.dev'
COOLIFY_RESOURCE_UUID: okgs8wc4ko4088wswgso04kk
COOLIFY_CONTAINER_NAME: pocketbase-okgs8wc4ko4088wswgso04kk
COOLIFY_FQDN: evebase.site.quack-lab.dev
COOLIFY_URL: 'https://evebase.site.quack-lab.dev'
SERVICE_NAME_POCKETBASE: pocketbase
volumes:
- '/mnt/data/docker/volumes/captain--evebase-data/_data:/app/pb_data'
container_name: pocketbase-okgs8wc4ko4088wswgso04kk
restart: unless-stopped
labels:
- coolify.managed=true
- coolify.version=4.0.0-beta.434
- coolify.serviceId=18
- coolify.type=service
- coolify.name=pocketbase-okgs8wc4ko4088wswgso04kk
- coolify.resourceName=pocketbase-evebase
- coolify.projectName=services
- coolify.serviceName=pocketbase
- coolify.environmentName=production
- coolify.pullRequestId=0
- coolify.service.subId=23
- coolify.service.subType=application
- coolify.service.subName=pocketbase
- traefik.enable=true
- traefik.http.middlewares.redirect-to-https.redirectscheme.scheme=https
- traefik.http.routers.http-0-okgs8wc4ko4088wswgso04kk-pocketbase.entryPoints=http
- traefik.http.routers.http-0-okgs8wc4ko4088wswgso04kk-pocketbase.middlewares=redirect-to-https
- 'traefik.http.routers.http-0-okgs8wc4ko4088wswgso04kk-pocketbase.rule=Host(`evebase.site.quack-lab.dev`) && PathPrefix(`/`)'
- traefik.http.routers.http-0-okgs8wc4ko4088wswgso04kk-pocketbase.service=http-0-okgs8wc4ko4088wswgso04kk-pocketbase
- traefik.http.routers.https-0-okgs8wc4ko4088wswgso04kk-pocketbase.entryPoints=https
- 'traefik.http.routers.https-0-okgs8wc4ko4088wswgso04kk-pocketbase.rule=Host(`evebase.site.quack-lab.dev`) && PathPrefix(`/`)'
- traefik.http.routers.https-0-okgs8wc4ko4088wswgso04kk-pocketbase.service=https-0-okgs8wc4ko4088wswgso04kk-pocketbase
- traefik.http.routers.https-0-okgs8wc4ko4088wswgso04kk-pocketbase.tls.certresolver=letsencrypt
- traefik.http.routers.https-0-okgs8wc4ko4088wswgso04kk-pocketbase.tls=true
- traefik.http.services.http-0-okgs8wc4ko4088wswgso04kk-pocketbase.loadbalancer.server.port=8080
- traefik.http.services.https-0-okgs8wc4ko4088wswgso04kk-pocketbase.loadbalancer.server.port=8080
- 'caddy_0.handle_path.0_reverse_proxy={{upstreams 8080}}'
- 'caddy_0.handle_path=/*'
- caddy_0.header=-Server
- 'caddy_0.try_files={path} /index.html /index.php'
- 'caddy_0=https://evebase.site.quack-lab.dev'
- caddy_ingress_network=okgs8wc4ko4088wswgso04kk
networks:
okgs8wc4ko4088wswgso04kk: null
volumes: { }
networks:
okgs8wc4ko4088wswgso04kk:
name: okgs8wc4ko4088wswgso04kk
external: true
configs: { }
secrets: { }

View File

@@ -0,0 +1,6 @@
SERVICE_NAME_ACTUAL_SERVER=actual_server
SERVICE_FQDN_ACTUAL_SERVER=actual.site.quack-lab.dev
SERVICE_FQDN_ACTUAL_SERVER_5006=actual.site.quack-lab.dev
SERVICE_URL_ACTUAL=https://actual.site.quack-lab.dev
SERVICE_URL_ACTUAL_SERVER=https://actual.site.quack-lab.dev
SERVICE_URL_ACTUAL_SERVER_5006=https://actual.site.quack-lab.dev

View File

@@ -0,0 +1,67 @@
services:
actual_server:
image: 'actualbudget/actual-server:latest'
environment:
SERVICE_URL_ACTUAL_5006: null
ACTUAL_LOGIN_METHOD: password
COOLIFY_RESOURCE_UUID: os8okksgwg8wgg440ogsccc0
COOLIFY_CONTAINER_NAME: actual_server-os8okksgwg8wgg440ogsccc0
COOLIFY_FQDN: actual.site.quack-lab.dev
COOLIFY_URL: 'https://actual.site.quack-lab.dev'
SERVICE_NAME_ACTUAL_SERVER: actual_server
volumes:
- '/mnt/data/docker/volumes/captain--actual-data/_data:/data'
healthcheck:
test:
- CMD-SHELL
- "bash -c ':> /dev/tcp/127.0.0.1/5006' || exit 1"
interval: 5s
timeout: 20s
retries: 3
container_name: actual_server-os8okksgwg8wgg440ogsccc0
restart: unless-stopped
labels:
- coolify.managed=true
- coolify.version=4.0.0-beta.434
- coolify.serviceId=16
- coolify.type=service
- coolify.name=actual_server-os8okksgwg8wgg440ogsccc0
- coolify.resourceName=actual
- coolify.projectName=services
- coolify.serviceName=actual-server
- coolify.environmentName=production
- coolify.pullRequestId=0
- coolify.service.subId=21
- coolify.service.subType=application
- coolify.service.subName=actual-server
- traefik.enable=true
- traefik.http.middlewares.gzip.compress=true
- traefik.http.middlewares.redirect-to-https.redirectscheme.scheme=https
- traefik.http.routers.http-0-os8okksgwg8wgg440ogsccc0-actual_server.entryPoints=http
- traefik.http.routers.http-0-os8okksgwg8wgg440ogsccc0-actual_server.middlewares=redirect-to-https
- 'traefik.http.routers.http-0-os8okksgwg8wgg440ogsccc0-actual_server.rule=Host(`actual.site.quack-lab.dev`) && PathPrefix(`/`)'
- traefik.http.routers.http-0-os8okksgwg8wgg440ogsccc0-actual_server.service=http-0-os8okksgwg8wgg440ogsccc0-actual_server
- traefik.http.routers.https-0-os8okksgwg8wgg440ogsccc0-actual_server.entryPoints=https
- traefik.http.routers.https-0-os8okksgwg8wgg440ogsccc0-actual_server.middlewares=gzip
- 'traefik.http.routers.https-0-os8okksgwg8wgg440ogsccc0-actual_server.rule=Host(`actual.site.quack-lab.dev`) && PathPrefix(`/`)'
- traefik.http.routers.https-0-os8okksgwg8wgg440ogsccc0-actual_server.service=https-0-os8okksgwg8wgg440ogsccc0-actual_server
- traefik.http.routers.https-0-os8okksgwg8wgg440ogsccc0-actual_server.tls.certresolver=letsencrypt
- traefik.http.routers.https-0-os8okksgwg8wgg440ogsccc0-actual_server.tls=true
- traefik.http.services.http-0-os8okksgwg8wgg440ogsccc0-actual_server.loadbalancer.server.port=5006
- traefik.http.services.https-0-os8okksgwg8wgg440ogsccc0-actual_server.loadbalancer.server.port=5006
- 'caddy_0.encode=zstd gzip'
- 'caddy_0.handle_path.0_reverse_proxy={{upstreams 5006}}'
- 'caddy_0.handle_path=/*'
- caddy_0.header=-Server
- 'caddy_0.try_files={path} /index.html /index.php'
- 'caddy_0=https://actual.site.quack-lab.dev'
- caddy_ingress_network=os8okksgwg8wgg440ogsccc0
networks:
os8okksgwg8wgg440ogsccc0: null
volumes: { }
networks:
os8okksgwg8wgg440ogsccc0:
name: os8okksgwg8wgg440ogsccc0
external: true
configs: { }
secrets: { }

View File

@@ -0,0 +1,8 @@
SERVICE_NAME_CALIBRE_WEB=calibre-web
SERVICE_FQDN_CALIBRE_WEB=calibre.site.quack-lab.dev
SERVICE_FQDN_CALIBRE_WEB_8083=calibre.site.quack-lab.dev
SERVICE_URL_CALIBRE=https://calibre.site.quack-lab.dev
SERVICE_URL_CALIBRE_WEB=https://calibre.site.quack-lab.dev
SERVICE_URL_CALIBRE_WEB_8083=https://calibre.site.quack-lab.dev
DOCKER_MODS=linuxserver/mods:universal-calibre
TZ=Etc/UTC

View File

@@ -0,0 +1,73 @@
services:
calibre-web:
image: 'lscr.io/linuxserver/calibre-web:latest'
environment:
SERVICE_URL_CALIBRE_8083: null
PUID: '1000'
PGID: '1000'
TZ: '${TZ:-Etc/UTC}'
DOCKER_MODS: '${DOCKER_MODS:-linuxserver/mods:universal-calibre}'
COOLIFY_RESOURCE_UUID: p08wck8csk8cckk4g8co4gwg
COOLIFY_CONTAINER_NAME: calibre-web-p08wck8csk8cckk4g8co4gwg
COOLIFY_FQDN: calibre.site.quack-lab.dev
COOLIFY_URL: 'https://calibre.site.quack-lab.dev'
SERVICE_NAME_CALIBRE_WEB: calibre-web
volumes:
- '/mnt/data/docker/volumes/captain--calibre-config/_data:/config'
- '/mnt/data/docker/volumes/captain--sync-data/_data/Books/Calibre:/books'
healthcheck:
test:
- CMD
- curl
- '-f'
- 'http://127.0.0.1:8083'
interval: 5s
timeout: 20s
retries: 10
container_name: calibre-web-p08wck8csk8cckk4g8co4gwg
restart: unless-stopped
labels:
- coolify.managed=true
- coolify.version=4.0.0-beta.434
- coolify.serviceId=23
- coolify.type=service
- coolify.name=calibre-web-p08wck8csk8cckk4g8co4gwg
- coolify.resourceName=calibre-web
- coolify.projectName=services
- coolify.serviceName=calibre-web
- coolify.environmentName=production
- coolify.pullRequestId=0
- coolify.service.subId=29
- coolify.service.subType=application
- coolify.service.subName=calibre-web
- traefik.enable=true
- traefik.http.middlewares.gzip.compress=true
- traefik.http.middlewares.redirect-to-https.redirectscheme.scheme=https
- traefik.http.routers.http-0-p08wck8csk8cckk4g8co4gwg-calibre-web.entryPoints=http
- traefik.http.routers.http-0-p08wck8csk8cckk4g8co4gwg-calibre-web.middlewares=redirect-to-https
- 'traefik.http.routers.http-0-p08wck8csk8cckk4g8co4gwg-calibre-web.rule=Host(`calibre.site.quack-lab.dev`) && PathPrefix(`/`)'
- traefik.http.routers.http-0-p08wck8csk8cckk4g8co4gwg-calibre-web.service=http-0-p08wck8csk8cckk4g8co4gwg-calibre-web
- traefik.http.routers.https-0-p08wck8csk8cckk4g8co4gwg-calibre-web.entryPoints=https
- traefik.http.routers.https-0-p08wck8csk8cckk4g8co4gwg-calibre-web.middlewares=gzip
- 'traefik.http.routers.https-0-p08wck8csk8cckk4g8co4gwg-calibre-web.rule=Host(`calibre.site.quack-lab.dev`) && PathPrefix(`/`)'
- traefik.http.routers.https-0-p08wck8csk8cckk4g8co4gwg-calibre-web.service=https-0-p08wck8csk8cckk4g8co4gwg-calibre-web
- traefik.http.routers.https-0-p08wck8csk8cckk4g8co4gwg-calibre-web.tls.certresolver=letsencrypt
- traefik.http.routers.https-0-p08wck8csk8cckk4g8co4gwg-calibre-web.tls=true
- traefik.http.services.http-0-p08wck8csk8cckk4g8co4gwg-calibre-web.loadbalancer.server.port=8083
- traefik.http.services.https-0-p08wck8csk8cckk4g8co4gwg-calibre-web.loadbalancer.server.port=8083
- 'caddy_0.encode=zstd gzip'
- 'caddy_0.handle_path.0_reverse_proxy={{upstreams 8083}}'
- 'caddy_0.handle_path=/*'
- caddy_0.header=-Server
- 'caddy_0.try_files={path} /index.html /index.php'
- 'caddy_0=https://calibre.site.quack-lab.dev'
- caddy_ingress_network=p08wck8csk8cckk4g8co4gwg
networks:
p08wck8csk8cckk4g8co4gwg: null
volumes: { }
networks:
p08wck8csk8cckk4g8co4gwg:
name: p08wck8csk8cckk4g8co4gwg
external: true
configs: { }
secrets: { }

View File

@@ -0,0 +1,5 @@
SERVICE_NAME_POCKETBASE=pocketbase
SERVICE_FQDN_POCKETBASE=pocketbase-scratch.site.quack-lab.dev
SERVICE_FQDN_POCKETBASE_8080=pocketbase-scratch.site.quack-lab.dev
SERVICE_URL_POCKETBASE=https://pocketbase-scratch.site.quack-lab.dev
SERVICE_URL_POCKETBASE_8080=https://pocketbase-scratch.site.quack-lab.dev

View File

@@ -0,0 +1,56 @@
services:
pocketbase:
image: 'ghcr.io/coollabsio/pocketbase:latest'
environment:
SERVICE_URL_POCKETBASE_8080: 'https://pocketbase-scratch.site.quack-lab.dev'
COOLIFY_RESOURCE_UUID: us400k08gg08wkwkswsgwkow
COOLIFY_CONTAINER_NAME: pocketbase-us400k08gg08wkwkswsgwkow
COOLIFY_FQDN: pocketbase-scratch.site.quack-lab.dev
COOLIFY_URL: 'https://pocketbase-scratch.site.quack-lab.dev'
SERVICE_NAME_POCKETBASE: pocketbase
volumes:
- '/mnt/data/docker/volumes/captain--pocketbase-scratch/_data:/app/pb_data'
container_name: pocketbase-us400k08gg08wkwkswsgwkow
restart: unless-stopped
labels:
- coolify.managed=true
- coolify.version=4.0.0-beta.434
- coolify.serviceId=20
- coolify.type=service
- coolify.name=pocketbase-us400k08gg08wkwkswsgwkow
- coolify.resourceName=pocketbase-scratch
- coolify.projectName=services
- coolify.serviceName=pocketbase
- coolify.environmentName=production
- coolify.pullRequestId=0
- coolify.service.subId=25
- coolify.service.subType=application
- coolify.service.subName=pocketbase
- traefik.enable=true
- traefik.http.middlewares.redirect-to-https.redirectscheme.scheme=https
- traefik.http.routers.http-0-us400k08gg08wkwkswsgwkow-pocketbase.entryPoints=http
- traefik.http.routers.http-0-us400k08gg08wkwkswsgwkow-pocketbase.middlewares=redirect-to-https
- 'traefik.http.routers.http-0-us400k08gg08wkwkswsgwkow-pocketbase.rule=Host(`pocketbase-scratch.site.quack-lab.dev`) && PathPrefix(`/`)'
- traefik.http.routers.http-0-us400k08gg08wkwkswsgwkow-pocketbase.service=http-0-us400k08gg08wkwkswsgwkow-pocketbase
- traefik.http.routers.https-0-us400k08gg08wkwkswsgwkow-pocketbase.entryPoints=https
- 'traefik.http.routers.https-0-us400k08gg08wkwkswsgwkow-pocketbase.rule=Host(`pocketbase-scratch.site.quack-lab.dev`) && PathPrefix(`/`)'
- traefik.http.routers.https-0-us400k08gg08wkwkswsgwkow-pocketbase.service=https-0-us400k08gg08wkwkswsgwkow-pocketbase
- traefik.http.routers.https-0-us400k08gg08wkwkswsgwkow-pocketbase.tls.certresolver=letsencrypt
- traefik.http.routers.https-0-us400k08gg08wkwkswsgwkow-pocketbase.tls=true
- traefik.http.services.http-0-us400k08gg08wkwkswsgwkow-pocketbase.loadbalancer.server.port=8080
- traefik.http.services.https-0-us400k08gg08wkwkswsgwkow-pocketbase.loadbalancer.server.port=8080
- 'caddy_0.handle_path.0_reverse_proxy={{upstreams 8080}}'
- 'caddy_0.handle_path=/*'
- caddy_0.header=-Server
- 'caddy_0.try_files={path} /index.html /index.php'
- 'caddy_0=https://pocketbase-scratch.site.quack-lab.dev'
- caddy_ingress_network=us400k08gg08wkwkswsgwkow
networks:
us400k08gg08wkwkswsgwkow: null
volumes: { }
networks:
us400k08gg08wkwkswsgwkow:
name: us400k08gg08wkwkswsgwkow
external: true
configs: { }
secrets: { }

View File

@@ -0,0 +1,5 @@
SERVICE_NAME_POCKETBASE=pocketbase
SERVICE_FQDN_POCKETBASE=pocketbase-youtube-seencounter.site.quack-lab.dev
SERVICE_FQDN_POCKETBASE_8090=pocketbase-youtube-seencounter.site.quack-lab.dev
SERVICE_URL_POCKETBASE=https://pocketbase-youtube-seencounter.site.quack-lab.dev
SERVICE_URL_POCKETBASE_8090=https://pocketbase-youtube-seencounter.site.quack-lab.dev

View File

@@ -0,0 +1,59 @@
services:
pocketbase:
image: 'docker.site.quack-lab.dev/youtube-seen-counter:latest'
environment:
SERVICE_URL_POCKETBASE_8080: null
COOLIFY_RESOURCE_UUID: yksw08ogw4c88oswckk8sco8
COOLIFY_CONTAINER_NAME: pocketbase-yksw08ogw4c88oswckk8sco8
COOLIFY_FQDN: pocketbase-youtube-seencounter.site.quack-lab.dev
COOLIFY_URL: 'https://pocketbase-youtube-seencounter.site.quack-lab.dev'
SERVICE_NAME_POCKETBASE: pocketbase
volumes:
- '/mnt/data/docker/volumes/captain--pocketbase-youtube-seencounter-data/_data:/app/pb_data'
container_name: pocketbase-yksw08ogw4c88oswckk8sco8
restart: unless-stopped
labels:
- coolify.managed=true
- coolify.version=4.0.0-beta.434
- coolify.serviceId=21
- coolify.type=service
- coolify.name=pocketbase-yksw08ogw4c88oswckk8sco8
- coolify.resourceName=pocketbase-youtube-seen-counter
- coolify.projectName=services
- coolify.serviceName=pocketbase
- coolify.environmentName=production
- coolify.pullRequestId=0
- coolify.service.subId=27
- coolify.service.subType=application
- coolify.service.subName=pocketbase
- traefik.enable=true
- traefik.http.middlewares.gzip.compress=true
- traefik.http.middlewares.redirect-to-https.redirectscheme.scheme=https
- traefik.http.routers.http-0-yksw08ogw4c88oswckk8sco8-pocketbase.entryPoints=http
- traefik.http.routers.http-0-yksw08ogw4c88oswckk8sco8-pocketbase.middlewares=redirect-to-https
- 'traefik.http.routers.http-0-yksw08ogw4c88oswckk8sco8-pocketbase.rule=Host(`pocketbase-youtube-seencounter.site.quack-lab.dev`) && PathPrefix(`/`)'
- traefik.http.routers.http-0-yksw08ogw4c88oswckk8sco8-pocketbase.service=http-0-yksw08ogw4c88oswckk8sco8-pocketbase
- traefik.http.routers.https-0-yksw08ogw4c88oswckk8sco8-pocketbase.entryPoints=https
- traefik.http.routers.https-0-yksw08ogw4c88oswckk8sco8-pocketbase.middlewares=gzip
- 'traefik.http.routers.https-0-yksw08ogw4c88oswckk8sco8-pocketbase.rule=Host(`pocketbase-youtube-seencounter.site.quack-lab.dev`) && PathPrefix(`/`)'
- traefik.http.routers.https-0-yksw08ogw4c88oswckk8sco8-pocketbase.service=https-0-yksw08ogw4c88oswckk8sco8-pocketbase
- traefik.http.routers.https-0-yksw08ogw4c88oswckk8sco8-pocketbase.tls.certresolver=letsencrypt
- traefik.http.routers.https-0-yksw08ogw4c88oswckk8sco8-pocketbase.tls=true
- traefik.http.services.http-0-yksw08ogw4c88oswckk8sco8-pocketbase.loadbalancer.server.port=8090
- traefik.http.services.https-0-yksw08ogw4c88oswckk8sco8-pocketbase.loadbalancer.server.port=8090
- 'caddy_0.encode=zstd gzip'
- 'caddy_0.handle_path.0_reverse_proxy={{upstreams 8090}}'
- 'caddy_0.handle_path=/*'
- caddy_0.header=-Server
- 'caddy_0.try_files={path} /index.html /index.php'
- 'caddy_0=https://pocketbase-youtube-seencounter.site.quack-lab.dev'
- caddy_ingress_network=yksw08ogw4c88oswckk8sco8
networks:
yksw08ogw4c88oswckk8sco8: null
volumes: { }
networks:
yksw08ogw4c88oswckk8sco8:
name: yksw08ogw4c88oswckk8sco8
external: true
configs: { }
secrets: { }