Busabase

Quickstart

Install Busabase on your own server with one command, check it actually worked, and activate your licence — including on a network with no internet access.

This is the same guide published at busabase.com/self-hosted/install. It is repeated here because the docs ship inside the image: on a network that cannot reach busabase.com, this page still opens.

Ce dont l'hôte a besoin

CPU
2 vCPU
Mémoire
2 GB
Disque
10 GB
Port ouvert
3000 + 8333/tcp

Mesuré au démarrage à froid avec un volume vide : 24 s pour atteindre un serveur sain, 548 Mio au repos, 50 Mo dans /data après le premier démarrage. Deux ports : l'application, et le stockage d'objets — le navigateur récupère les pièces jointes directement depuis le stockage, qui doit donc être accessible. Postgres reste à l'intérieur du conteneur.

docker run -d --name busabase \
  -p 3000:3000 \
  -p 8333:8333 \
  -v busabase-data:/data \
  --restart unless-stopped \
  busabase/busabase-premium-allinone:trial

Vérifiez que ça a fonctionné

Ne devinez pas simplement parce que le conteneur tourne. Interrogez le serveur lui-même ; il répond avant même que quiconque se connecte.

curl -s http://localhost:3000/api/health

Un serveur en bonne santé répond avec :

{"status":"ok","service":"busabase","version":"0.10.0", ...}

Activez votre licence

Ouvrez le serveur, connectez-vous en tant qu'administrateur, et allez dans Administration système → Licence. Collez-y le code d'activation ; il est vérifié sur la machine elle-même et ne nécessite aucun accès internet. Les codes sont émis depuis votre compte Busabase Cloud, sous Paramètres → Licence auto-hébergée.

Installation sur un réseau sans accès internet

Transférez l'image comme un fichier. L'archive fait environ 489 Mo ; vérifiez le hash à l'arrivée, car un transfert tronqué ne se révèle que bien plus tard sous la forme d'une erreur d'exécution déroutante.

# On a machine with internet access
docker pull busabase/busabase-premium-allinone:latest
docker save busabase/busabase-premium-allinone:latest -o busabase-premium-allinone.tar
sha256sum busabase-premium-allinone.tar > busabase-premium-allinone.tar.sha256

# Move both files to the target host, then
sha256sum -c busabase-premium-allinone.tar.sha256
docker load -i busabase-premium-allinone.tar

Ça ne démarre pas

Collectez un pack de diagnostic et envoyez-le à support@busabase.com. Il contient les logs, la sortie de santé et les métadonnées de l'image — aucune information d'identification : les secrets générés sont écrits dans /data/.credentials et ne sont jamais journalisés.

docker logs --tail 500 busabase > sb-logs.txt 2>&1
curl -s http://localhost:3000/api/health > sb-health.json
docker inspect busabase --format '{{.Config.Image}} {{.State.Status}}' > sb-meta.txt
tar czf busabase-support.tar.gz sb-logs.txt sb-health.json sb-meta.txt

What happens on first boot

The container generates its own credentials — the Postgres password, the object-storage keys, the session secret — writes them to /data/.credentials with mode 600, and reuses them on every later start. Nothing is baked into the image, so two people who pull the same image do not end up sharing secrets.

It then runs the database migrations and starts the app. On an empty volume this takes about 24 seconds end to end, most of it Postgres initialising itself for the first time. Later restarts skip both and are much faster.

Back up /data/.credentials along with your data. It is the only copy of those secrets — regenerating them would leave you with a database you cannot open.

Next

On this page