+10
-2
.github/workflows/docker-image.yml
+10
-2
.github/workflows/docker-image.yml
······# Uses the `docker/login-action` action to log in to the Container registry registry using the account and password that will publish the packages. Once published, the packages are scoped to the account defined here.# This step uses [docker/metadata-action](https://github.com/docker/metadata-action#about) to extract tags and labels that will be applied to the specified image. The `id` "meta" allows the output of this step to be referenced in a subsequent step. The `images` value provides the base name for the tags and labels.···# This step uses the `docker/build-push-action` action to build the image, based on your repository's `Dockerfile`. If the build succeeds, it pushes the image to GitHub Packages.# It uses the `context` parameter to define the build's context as the set of files located in the specified path. For more information, see "[Usage](https://github.com/docker/build-push-action#usage)" in the README of the `docker/build-push-action` repository.# It uses the `tags` and `labels` parameters to tag and label the image with the output from the "meta" step.
+10
Caddyfile.postgres
+10
Caddyfile.postgres
+44
-1
README.md
+44
-1
README.md
······+By default, Cocoon uses SQLite which requires no additional setup. For production deployments with higher traffic, you can use PostgreSQL:+> **Note**: When using PostgreSQL, database backups to S3 are not handled by Cocoon. Use `pg_dump` or your database provider's backup solution instead.···+Cocoon supports S3-compatible storage for both database backups (SQLite only) and blob storage (images, videos, etc.):···+- [x] `com.atproto.repo.listMissingBlobs` (Not actually functional, but will return a response as if no blobs were missing)
+36
-1
cmd/cocoon/main.go
+36
-1
cmd/cocoon/main.go
············
+158
docker-compose.postgres.yaml
+158
docker-compose.postgres.yaml
···+COCOON_DATABASE_URL: postgres://cocoon:${POSTGRES_PASSWORD}@postgres:5432/cocoon?sslmode=disable+COCOON_DATABASE_URL: postgres://cocoon:${POSTGRES_PASSWORD}@postgres:5432/cocoon?sslmode=disable
+6
-2
docker-compose.yaml
+6
-2
docker-compose.yaml
······
+21
server/handle_repo_list_missing_blobs.go
+21
server/handle_repo_list_missing_blobs.go
···
+34
-3
server/server.go
+34
-3
server/server.go
··················+s.logger.Info("skipping S3 backup - PostgreSQL backups should be handled externally (pg_dump, managed database backups, etc.)")