Go implementation of Blossom Server
- set which pubkey(s) can upload/get blobs
- set which mime-type(s) are allowed (i.e. pdf, jpeg)
- set upload max file limit
- edit the
config.yml
file (useconfig.yml.example
as base): - set
admin_pubkey
to the pubkey you want to have admin privileges. The admin can update the server settings: pubkey access, mime types, file size, etc. - set
api_addr
to the address where you want the CDN listening. If deploying behind a reverse proxy, this value could be left aslocalhost:8000
. - set
cdn_url
to the domain where you will serve the CDN, i.e.https://cdn.sebdev.io
. This value is used when listing blobs, it is prepended to the blob hash:${cdn_url}/hash
.
- clone repo
- build docker image
docker build -t blossom .
- run container
docker run --rm --name blossom -v $(pwd)/config.yml:/config.yml -v $(pwd)/db:/db -p 8000:8000 blossom