{% extends "admin/dbs/wiki/_layout.html" %} {% block wiki %}

The DBS manager

The DBS manager is a separate application in the same package. Run it on your own machine with:

django_dbs run

If the shell says django_dbs is not recognized, pip put the script in a folder that is not on your PATH. Run python -m dbs.manager run instead, or install with pipx install django-dbs.

It opens in your browser and looks after many servers over SSH: it takes and pulls their backups, keeps their .env versions and folder archives, and can restore a project onto a new server when the old one goes down.

From a terminal

Everything the manager's interface does is also a command, on the same data and the same audit trail:

django_dbs server add web --host app.example.com --user deploy --ssh-password
django_dbs backup take --all
django_dbs backup list --server web

server add shows the host key fingerprint to confirm, finds this project and the Python that has django-dbs, and checks the server. Actions the interface protects with your password ask for it in the terminal too. django_dbs AREA VERB --help lists the rest: server, backup, plan, activity, env, files and redeploy.

With Claude

django_dbs mcp lets Claude add servers, take and verify backups, set up plans and rehearse restores (claude mcp add dbs -- django_dbs mcp). It never reveals a secret, never takes your account password, and cannot restore for real, remove or delete anything.

Letting it reach this project

  1. Open Connection and press Copy.
  2. In the manager, choose Add a server and paste the snippet, or run django_dbs server add. Without one, the manager searches the server for the project once it can sign in, and Browse the server lets you pick its folder from the server's own folders.
  3. Confirm the host key fingerprint matches the one shown on the Connection page.
  4. Add the key the manager shows to ~/.ssh/authorized_keys for the user that owns this project.

If this project runs in a Docker Compose service, choose In a Docker Compose service under Where the project runs and name the service, or pass --runtime compose --compose-service backend to server add. The manager then runs every manage.py command inside that service with docker compose exec, from the project folder, and copies backups in and out with docker compose cp. The SSH user must be able to run docker compose and the service must be running, with django-dbs installed in its image.

This project never contacts the manager and keeps nothing about it. A backup the manager asks for is written to DBS_BACKUP_DIR and recorded in the audit trail like any other backup.

{% endblock %}