Go to file
2024-11-05 17:03:27 +01:00
.gitea/workflows ci: fix 2024-11-04 16:13:37 +01:00
.idea fix: docker volume mount 2024-11-05 16:29:12 +01:00
.gitignore fix: docker config symlink 2024-11-05 17:03:27 +01:00
chief-config.toml fix: removing blossom source code from the repo 2024-11-05 12:04:03 +01:00
chief.json fix: removing blossom source code from the repo 2024-11-05 12:04:03 +01:00
CloudronManifest.json feat: Cloudron packing 2024-11-04 18:26:14 +01:00
config.example.yml init 2024-11-04 16:09:32 +01:00
DESCRIPTION.md feat: Cloudron packing 2024-11-04 18:26:14 +01:00
Dockerfile fix: docker config symlink 2024-11-05 17:03:27 +01:00
Dockerfile.backup fix: removing blossom source code from the repo 2024-11-05 12:04:03 +01:00
LICENSE.txt init 2024-11-04 16:09:32 +01:00
logo.png feat: Cloudron packing 2024-11-04 18:26:14 +01:00
POSTINSTALL.md feat: Cloudron packing 2024-11-04 18:26:14 +01:00
README.md chore(docs): readme updates 2024-11-05 15:27:45 +00:00
start.sh fix: start.sh permissions 2024-11-05 12:35:03 +01:00

🌸 Blossom-server

Blossom Server packaged to run as a cloudronapp. Supports policies through the /app/data/config.yaml file.

The app is not yet in the Cloudron App Store, so for now you have to use the Cloudron CLI to install.

Prerequisites

Install the Cloudron CLI - npm install -g cloudron

Installation

# Login with your cloudron credentials
cloudron login your.instance.com

# Clone the project and change into it
git clone https://git.nostrdev.com/stuff/blossom-cloudron
cd blossom-cloudron

# Install latest version
cloudron install --image git.nostrdev.com/stuff/blossom-cloudron:latest

You will then be prompted for a location - so put the domain, eg blossom.yourdomain.com

Configuration

The config file is under /app/data/config.yml

If you are using Blossom for a small subset of npubs, and don't need the discoverability feature, you could make the following changes:

discovery:
  # find files by querying nostr relays
  nostr:
    enabled: false

and

  rules:
    # mime type of blob
    - type: "*"
      expiration: 2 years
      pubkeys:
        - "xxxnostrHEXkeyxxx" # comment

and

upload:
  # only check rules that include "pubkeys"
  requirePubkeyInRule: true