Installation standard
Installation de Dokos v5 sur Ubuntu 24.04
Pré-requis
Le serveur Ubuntu doit posséder au moins 4 Go de RAM, 40 Go d'espace disque, ainsi qu'un utilisateur non root avec accès sudo.
Création d'un utilisateur
Si ça n'est pas déjà le cas, par exemple si votre serveur est nouvellement créé, vous devrez créer un utilisateur non-root et lui donner les droits sudo. Ensuite, connectez-vous à votre serveur via SSH avec cet utilisateur.
Commandes pour créer un utilisateur
adduser dokos
usermod -aG sudo dokos
rsync --archive --chown=dokos:dokos ~/.ssh /home/dokos
exit
Ces étapes sont extraites du guide de démarrage Ubuntu par Digital Ocean.
Python 3.14
Dodock v5 demande Python 3.14 exactement (>=3.14,<3.15). Vérifiez que Python 3.14 est installé, puis installez les paquets supplémentaires.
python3.14 --version
# Python 3.14.x
sudo apt-get install python3.14 python3.14-dev python3.14-venv
Ubuntu 24.04 fournit Python 3.12. Installez Python 3.14 depuis le dépôt deadsnakes :
sudo add-apt-repository ppa:deadsnakes/ppa
sudo apt-get update -y
sudo apt-get install python3.14 python3.14-dev python3.14-venv
Git, Redis, wkhtmltopdf, etc.
Ensuite, installez les paquets suivants :
# Mise à jour des dépôts
sudo apt-get install -y git redis-server ca-certificates file pkg-config default-libmysqlclient-dev build-essential xvfb libfontconfig wkhtmltopdf
wkhtmltopdf produit les documents PDF de Dokos. Vérifiez sa version avec wkhtmltopdf --version. La version recommandée est 0.12.6 (with patched qt) : sans le Qt patché, les en-têtes et pieds de page des PDF peuvent manquer.MariaDB (10.6 à 11.8)
Dodock affiche un avertissement avec une version de MariaDB antérieure à 10.6 ou postérieure à 11.8. Ubuntu 24.04 fournit MariaDB 10.11.
sudo apt-get install -y mariadb-server mariadb-client
Pendant l'installation, vous devrez choisir un mot de passe pour l'utilisateur root pour votre base de données. Ce dernier doit être précieusement conservé, il vous sera demandé lors de la création de chaque site et pour certaines opérations de maintenance.
Pour le configurer ou le modifier, vous pouvez lancer la commande suivante :
sudo mariadb-secure-installation
# > Enter current password for root (enter for none):
# Laissez vide et appuyez sur Entrée à la première question.
# > Switch to unix_socket authentication [Y/n] n
# Répondre non (n) à la question, car nous utiliserons l'authentification par mot de passe.
# > Set root password? [Y/n] Y
# Répondre oui (Y), puis entrer un mot de passe sécurisé pour l'utilisateur `root` de la base de données.
# Ce mot de passe sera demandé à chaque création de site, ainsi que lors ce certaines opérations de maintenance.
# Ensuite, répondre oui (Y) à toutes les questions suivantes.
# > Remove anonymous users? [Y/n] Y
# > Disallow root login remotely? [Y/n] Y
# > Remove test database and access to it? [Y/n] Y
# > Reload privilege tables now? [Y/n] Y
Vérifiez que vous pouvez vous connecter à la base de données avec le mot de passe que vous avez défini :
mysql -u root -p
# Pour quitter la console, tapez `exit`
NodeJS (v24 ou ultérieur) et yarn
Vous pouvez installer NodeJS via nvm ou le gestionnaire de paquets de votre distribution.
curl -o - https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
. "$HOME/.nvm/nvm.sh"
nvm install 24
npm install -g yarn
# Créez un lien symbolique pour que NodeJS soit accessible facilement à tous les utilisateurs
sudo ln -s $(which node) /usr/bin/
Vérifiez que NodeJS a bien été installé
node -v
# v24.x.y
docli
La commande bench de Dokos vient de docli, une adaptation de Bench. Elle gère vos sites et applications Dodock. Sur PyPI, le paquet de docli s'appelle dokos-cli : installez-le avec pip.
dokos), qui dialogue avec un site par l'API REST.export PATH=$PATH:$HOME/.local/bin
printf '\n%s\n' 'export PATH=$PATH:$HOME/.local/bin' >> ~/.bashrc
pip install --user --upgrade --quiet --break-system-packages dokos-cli
Ensuite, vérifiez que docli est bien installé :
bench --version
# 2.9.2
bench n'est pas trouvée, relancez votre terminal pour que les modifications de votre variable d'environnement PATH soient prises en compte. En dernier recours, vous pouvez aussi ajouter la ligne export PATH=$PATH:$HOME/.local/bin à votre fichier ~/.bashrc.Démarrage du serveur et installation d'un site
Création d'un bench
Un bench est un ensemble de sites et d'applications, et se crée avec les commandes suivantes :
cd # Retournez dans votre dossier personnel
bench init dokos-bench --version v5 --python $(which python3.14) --frappe-path https://gitlab.com/dokos/dodock
cd dokos-bench
Ensuite, téléchargez les applications que vous souhaitez installer sur vos sites. Nous vous recommandons les applications suivantes pour démarrer, mais beaucoup d'autres applications sont disponibles.
# Téléchargez les applications de base
bench get-app --branch v5 https://gitlab.com/dokos/payments
bench get-app --branch v5 https://gitlab.com/dokos/dokos
bench get-app --branch v5 https://gitlab.com/dokos/webshop
bench get-app --branch v5 https://gitlab.com/dokos/hrms
# bench get-app --branch v5 https://github.com/frappe/blog
# bench get-app --branch v5 https://gitlab.com/dokos/bookings
Démarrage du serveur
Cliquez ici pour afficher/masquer les instructions du mode développement
Activer le developer_mode et lancer le serveur avec bench start vous permet de voir vos modifications de code en temps réel. Vous devrez lancer le serveur manuellement à chaque redémarrage de votre ordinateur.
# Dans un NOUVEAU terminal, lancez le serveur de développement manuellement
bench start
# Vous pouvez masquer la fenêtre
# Retournez dans le terminal précédent, puis créez un site.
bench new-site monsite.dokos.cloud
# Puis activez le mode développeur
bench --site monsite.dokos.cloud set-config developer_mode 1
Vérifiez que vous êtes bien dans le bench que vous venez de créer puis lancez les commandes suivantes pour activer le mode production de Dokos.
sudo mkdir -p /root/.config/pip
printf "[global]\nbreak-system-packages = true\n" | sudo tee -a /root/.config/pip/pip.conf
sudo python3 -m pip install -U -q dokos-cli
sudo -H bench setup production $USER
Création d'un site
Créez votre site et installez les applications dont vous avez besoin.
# Créez un site (remplacez `monsite.dokos.cloud` par le nom de domaine de votre choix)
bench new-site monsite.dokos.cloud
# Installez les applications dont vous avez besoin
bench --site monsite.dokos.cloud install-app payments dokos webshop hrms
Finaliser l'installation
Par défaut, Nginx accède aux fichiers de votre site en tant qu'utilisateur www-data à l'aide d'un lien symbolique.
Pour que cela fonctionne, vous devez donner à Nginx le droit de traverser votre dossier utilisateur et suivre le lien symbolique.
setfacl --modify user:www-data:x ~
Une fois le site créé, vous pouvez vous connecter et accéder à l'interface d'administration avec l'une des adresses suivantes :
- Si vous avez un enregistrement DNS configuré qui pointe vers votre serveur : http://monsite.dokos.cloud
- Si Dokos est installé sur votre ordinateur directement en mode développement : http://localhost:8000
Utilisez les identifiants suivants :
- Adresse email :
Administrator - Mot de passe : le mot de passe que vous avez choisi lors de la création du site.
Suivez les étapes de l'Assistant de configuration pour finaliser l'installation.
Pour aller plus loin
Pour le rendre accessible depuis l'extérieur, il faut configurer un enregistrement DNS qui pointe vers votre serveur, et configurer Let's Encrypt pour obtenir un certificat SSL.
Questions Fréquentes
Le site s'affiche sans mise en forme ni couleurs ?
- Vérifiez que votre dossier utilisateur serveur est bien accessible pour Nginx.
- Vous pouvez donner le droit de traverser le dossier en lançant
chmod +x /home/<votre-utilisateur>.