mirror of
https://github.com/zhom/donutbrowser.git
synced 2026-10-19 14:07:19 +02:00
41 lines
1.3 KiB
YAML
41 lines
1.3 KiB
YAML
# Storage for developing and testing donut-sync itself. It runs an S3 server
|
|
# only, and the sync server is expected to run on the host beside it
|
|
# (`pnpm start:dev`), which is why the port is published and matches the one
|
|
# pinned in test/test-env.ts.
|
|
#
|
|
# This is NOT the self-hosting compose file. That one runs donut-sync in a
|
|
# container too, and it must set S3_PUBLIC_ENDPOINT, because a server that signs
|
|
# presigned URLs against a compose-internal host such as `http://minio:9000`
|
|
# hands every device a URL it cannot open, while /health and /readyz stay green.
|
|
# Take the self-hosting compose from https://donutbrowser.com/docs/self-hosting
|
|
# rather than from here.
|
|
services:
|
|
s3:
|
|
# rclone, not MinIO: MinIO withdrew its community images (quay.io now
|
|
# answers 401 and Docker Hub denies the pull) as well as its binaries.
|
|
# `rclone serve s3` is what scripts/sync-test-harness.mjs uses too.
|
|
image: rclone/rclone:latest
|
|
ports:
|
|
- "8987:9000"
|
|
command:
|
|
- serve
|
|
- s3
|
|
- /data
|
|
- --addr
|
|
- :9000
|
|
- --auth-key
|
|
- minioadmin,minioadmin
|
|
- --force-path-style
|
|
- --vfs-cache-mode
|
|
- writes
|
|
healthcheck:
|
|
test: ["CMD", "nc", "-z", "127.0.0.1", "9000"]
|
|
interval: 2s
|
|
timeout: 5s
|
|
retries: 15
|
|
volumes:
|
|
- s3_data:/data
|
|
|
|
volumes:
|
|
s3_data:
|