Petite erreur dans la doc et questions

1:
À Bench - Dokos - Documentation ça dit :
Paramètrer des sauvegardes : bench setup backup
Sauf que cette commande n’existe pas:

bench setup backup
Usage: bench setup [OPTIONS] COMMAND [ARGS]...
Try 'bench setup --help' for help.
Error: No such command 'backup'.

bench setup backups existe. :smiley:

2:
sudo bench setup production … ok mais je sens le problème venir, la production est normalement dans docker, et donc là, c’est le drame :

frappe@c45eeac67691:~/frappe-bench$ sudo bench setup production --help
bash: sudo: command not found
frappe@c45eeac67691:~/frappe-bench$ bench setup production --help
WARN: superuser privileges required for this command

Bon alors, je pourrais installer sudo dans le container, mais j’imagine qu’il y a une autre solution non ? Ou bien la stack dodock est déjà en production ?

Bonjour @pmz,

Oui, en quelque sorte : pas besoin de sudo bench setup production effectivement.


Pour les sauvegardes, je n’ai pas très bien exploré la question. J’imagine qu’il y a un outil spécifique à Docker pour juste faire des sauvegardes des volumes Docker, sans faire de sauvegardes avec bench.


Pour aller plus loin, il faudra ajouter un reverse proxy comme Traefik pour la gestion des certificats HTTPS, ce qui n’est pas très bien documenté…

Ah, ok. j’explore la partie ports justement, car j’ai mon propre reverse proxy pour les noms de domaine, un autre container, donc je ne sais pas comment ça va fonctionner ensemble.

Je ne comprends pas un truc :
Avec bench, j’ai setup un sous-domaine en tant que site et vers un port, c’est bien dans le fichier config. J’ai changé et relancé le compose pour servir ce port.
Puis j’ai bench setup nginx qui me confirme que c’est servi:

Port configuration list:
Site ssdom.dom.org assigned port: 3100
Site frontend assigned port: 80

Mais ss -tulpn | grep LISTEN me montre que ce port n’est pas activement servi (ni 80 d’ailleurs). Seul le port 8080 est servi (l’autre c’est la session en cours en local):

tcp   LISTEN 0      4096      127.0.0.11:40809      0.0.0.0:*          
tcp   LISTEN 0      2048         0.0.0.0:8080       0.0.0.0:*    users:(("nginx",pid=12,fd=5),("nginx",pid=11,fd=5),("nginx",pid=10,fd=5),("nginx",pid=9,fd=5),("nginx",pid=8,fd=5))

Il a son propre reverse proxy interne ? Mais le port 3100 devrait être servi quand même non ?
Je n’utilise pas traefik, j’ai un autre reverse proxy avec gestion des certificats SSL. Ca fonctionne avec d’autres containers (dès le moment où le serveur sert le bon port évidemment).

D’ailleurs avant de basculer le DNS, comment on peut tester que l’interface répond sans passer par le sous-domaine publiquement ? Parce qu’à l’IP locale et le port, ça ne répond pas (en même temps y’a pas de serveur sur ce port, logique).

EDIT:
Je vois que /etc/nginx/conf.d/frappe.conf n’a pas le serveur avec le port 3100 rajouté, il faut se le farcir à la main ? Ou bench le fait pour nous ? J’ai raté quelque chose.

EDIT2:
Apparemment, il écrit juste config/nginx.conf (plusieurs server names) et il n’y a qu’un seul port dedans (80). Et selon une vieille page (10 ans d’âge, un whisky quoi) bench/README.md at master · plakesr/bench · GitHub il faut linker manuellement ou mv dans nginx/conf.d en frappe.conf … ce dernier cependant existe et sert le port 8080.
Je comprends pourquoi il dit Site frontend assigned port: 80 du coup, mais il n’est pas servi, et le 3100 est juste introuvable.
Une idée @corentin de ce que j’ai raté ?