Assoluto

Vlastní hosting

Váš server. Vaše data. Vaše pravidla.

Celý zdrojový kód pod AGPL-3.0. Hostujte Assoluto na vlastním VPS — zdarma, bez limitů, s Docker Compose.

Požadavky

  • ✓ Linux server s Docker 24+ (stačí 2 vCPU, 2 GB RAM)
  • ✓ PostgreSQL 16 (běží uvnitř Compose stacku)
  • ✓ S3-kompatibilní úložiště (MinIO, Backblaze B2, Cloudflare R2, AWS S3)
  • ✓ SMTP relay pro odchozí e-maily
  • ✓ Veřejný hostname + TLS (doporučujeme Caddy nebo nginx)

Lokální demo za 60 sekund

# naklonovat, spustit, hotovo
git clone https://github.com/eLh0m3r0/assoluto.git
cd assoluto
cp .env.example .env
docker compose up --build

# v druhém terminálu — naplňte demo data
docker compose exec web python -m scripts.seed_dev

# otevřít http://4mex.localhost:8000 — ukázkový portál
# vlastnik@dilna.example.com / demo1234 (tým dodavatele)
# jan@klient.example.com     / demo1234 (kontakt zákazníka)

Nasazení do produkce

Repozitář obsahuje docker-compose.prod.yml, nadstavbu nad základním docker-compose.yml. Před aplikaci postaví Caddy s automatickým HTTPS. Přiložený Caddyfile získává wildcard certifikát přes DNS API Porkbun — vyměňte DNS plugin za plugin svého poskytovatele, nebo použijte příklad pro nginx v docker/nginx.conf.example. Nastavení (hesla k databázi, SMTP, S3, doménu) uložte do env souboru a spusťte:

docker compose --env-file /etc/assoluto/env \
  -f docker-compose.yml -f docker-compose.prod.yml up -d

Návody krok za krokem: docs/SELF_HOST.md, seznam env proměnných v docs/ENV.md.

Single-tenant vs. multi-tenant

Self-hosted instalace běží ve výchozím nastavení jako single-tenant — jeden dodavatel, mnoho kontaktů zákazníků. Pro víc nezávislých dodavatelů na jedné instanci nastavte FEATURE_PLATFORM=true — tím zapnete opt-in SaaS vrstvu s identitou napříč tenanty, registrací a platform adminem.

Pár slov k AGPL-3.0

Assoluto vychází pod licencí AGPL-3.0. Prakticky: můžete ho zdarma provozovat, upravovat i hostovat — i komerčně. Pokud ale upravenou verzi nabízíte jako službu třetím stranám, musíte své úpravy zveřejnit pod stejnou licencí. Pro uzavřené nasazení nás kontaktujte pro komerční licenci.