Co-authored-by: 🏔️ Peak <122374094+peaklabs-dev@users.noreply.github.com>
Co-authored-by: ShadowArcanist <162910371+ShadowArcanist@users.noreply.github.com>
80 lines
2.5 KiB
YAML
80 lines
2.5 KiB
YAML
# documentation: https://chibisafe.app/docs/intro
|
|
# slogan: A beautiful and performant vault to save all your files in the cloud.
|
|
# tags: storage,file-sharing,upload,sharing
|
|
# logo: svgs/chibisafe.svg
|
|
# port: 80
|
|
|
|
## This service includes its own reverse proxy because the application routing is broken, also it needs caddy for serving static files https://github.com/coollabsio/coolify/pull/5808#pullrequestreview-3340419006
|
|
|
|
services:
|
|
chibisafe:
|
|
image: chibisafe/chibisafe:v6.5.5
|
|
environment:
|
|
- BASE_API_URL=http://chibisafe-server:8000
|
|
healthcheck:
|
|
test: ["CMD", "wget", "--spider", "--quiet", "http://127.0.0.1:8001"]
|
|
interval: 30s
|
|
timeout: 10s
|
|
retries: 3
|
|
start_period: 10s
|
|
|
|
chibisafe-server:
|
|
image: chibisafe/chibisafe-server:v6.5.5
|
|
volumes:
|
|
- chibisafe-database:/app/database:rw
|
|
- chibisafe-uploads:/app/uploads:rw
|
|
- chibisafe-logs:/app/logs:rw
|
|
healthcheck:
|
|
test:
|
|
[
|
|
"CMD",
|
|
"wget",
|
|
"--spider",
|
|
"--quiet",
|
|
"http://127.0.0.1:8000/api/health",
|
|
]
|
|
interval: 30s
|
|
timeout: 10s
|
|
retries: 3
|
|
start_period: 10s
|
|
|
|
caddy:
|
|
image: caddy:2-alpine
|
|
environment:
|
|
- SERVICE_URL_CHIBISAFE_80
|
|
healthcheck:
|
|
test: ["CMD", "wget", "--spider", "--quiet", "http://127.0.0.1:80"]
|
|
interval: 30s
|
|
timeout: 10s
|
|
retries: 3
|
|
start_period: 10s
|
|
volumes:
|
|
- uploads:/app/uploads:ro
|
|
- type: bind
|
|
source: ./Caddyfile
|
|
target: /etc/caddy/Caddyfile
|
|
content: |
|
|
# chibisafe/Caddyfile
|
|
# https://chibisafe.moe/guides/running-with-docker
|
|
:80 {
|
|
route {
|
|
file_server * {
|
|
root /app/uploads
|
|
pass_thru
|
|
}
|
|
@api path /api/*
|
|
reverse_proxy @api http://chibisafe-server:8000 {
|
|
header_up Host {http.reverse_proxy.upstream.hostport}
|
|
header_up X-Real-IP {http.request.header.X-Real-IP}
|
|
}
|
|
@docs path /docs*
|
|
reverse_proxy @docs http://chibisafe-server:8000 {
|
|
header_up Host {http.reverse_proxy.upstream.hostport}
|
|
header_up X-Real-IP {http.request.header.X-Real-IP}
|
|
}
|
|
reverse_proxy http://chibisafe:8001 {
|
|
header_up Host {http.reverse_proxy.upstream.hostport}
|
|
header_up X-Real-IP {http.request.header.X-Real-IP}
|
|
}
|
|
}
|
|
}
|