Exploitation

Utiliser la ligne de commande bench

Comprendre ce qu'est un bench et lancer les commandes courantes : sites, applications, sauvegardes, configuration et production.

Utiliser la ligne de commande bench

S'applique à : auto-hébergé. Sur Dokos Cloud, l'équipe Dokos lance ces commandes pour vous.

Chaque site Dokos est installé dans un bench. Un bench est un dossier qui contient un environnement virtuel Python, le framework Dodock, les applications et un ou plusieurs sites. La commande bench vient de l'outil docli (paquet PyPI dokos-cli), une adaptation de Frappe Bench.

Lancez les commandes depuis le dossier du bench, par exemple ~/dokos-bench. Les commandes qui agissent sur un site prennent l'option --site <site>. Avec Docker, préfixez-les par docker compose exec backend.

La liste complète est dans la référence des commandes bench. Pour l'aide d'une commande, lancez bench <commande> --help.

Créer un bench et un site

bench init ~/dokos-bench
cd ~/dokos-bench
bench new-site dokompany.fr
bench use dokompany.fr          # site par défaut : l'option --site devient facultative

Ajouter une application

bench get-app https://gitlab.com/dokos/hrms --branch v5
bench --site dokompany.fr install-app hrms
bench --site dokompany.fr list-apps

get-app télécharge l'application dans le bench. install-app l'installe sur un site. Voir aussi Installer une application.

Sauvegarder et restaurer

bench --site dokompany.fr backup --with-files
bench --site dokompany.fr restore /chemin/vers/20261031_020000-dokompany_fr-database.sql.gz
bench setup backups              # sauvegarde planifiée de tous les sites

Voir Sauvegarder et restaurer.

Configurer un site

bench --site dokompany.fr set-config mute_emails 1    # configuration du site
bench set-config -g server_script_enabled 1           # configuration commune à tous les sites (-g)
bench --site dokompany.fr show-config

Passer en production

sudo bench setup production <utilisateur>
bench setup nginx                # régénère la configuration Nginx
bench restart

Mettre à jour

bench update --restart-supervisor

Voir Mettre à jour un site auto-hébergé.

Exemple

L'administrateur de Dokompany ajoute l'application HRMS à son site de production, puis vérifie la liste des applications :

cd ~/dokos-bench
bench --site dokompany.fr backup
bench get-app https://gitlab.com/dokos/hrms --branch v5
bench --site dokompany.fr install-app hrms
bench --site dokompany.fr list-apps

La dernière commande affiche hrms avec frappe, erpnext et payments.