Photo by Ryan Stone / Unsplash

Ferdi: le Docker a changé, attention à la MàJ... (qui va foirer)

Docker 12 déc. 2021

Il y a quelques mois je mettais en place Ferdi. Ayant eu un pépin lors d'une MàJ (auto via Watchtower) je l'avais retiré. Puis tout à l'heure, en voulant mettre à jour, je retire le Docker, efface l'image locale et pull de nouveau le même repo : getferdi/ferdi-server

SURPRISE !!!  :)

Petite erreur de migration SQlite (il ne trouve pas ma base de données existante). En regardant bien les logs, il me dit qu'il sert Ferdi sur le port 3333. Étonnant (bis) vu que sur ma configuration Docker c'est le port 80.

Après avoir regardé en détail leur Github, ces pros ont tout simplement changé les volumes et le port du Docker officiel ; ça remonte à plusieurs mois certes mais l'effet a dû être làç pour ceux qui MàJ automatiquement.

Bref.

Voici leur docker-compose.yml "du moment" et donc ma config refaite :

docker run -d \
--name=ferdiserver \
-e NODE_ENV=development \
-e DB_CONNECTION=sqlite \
-e DB_HOST=127.0.0.1 \
-e DB_PORT=3306 \
-e DB_USER=root \
-e DB_PASSWORD=xxx \
-e DB_DATABASE=xxx \
-e MAIL_CONNECTION=smtp \
-e SMPT_HOST=xxx \
-e SMTP_PORT=465 \
-e SSL=true \
-e MAIL_USERNAME=xxx \
-e MAIL_PASSWORD='xxx' \
-e MAIL_SENDER=xxx \
-e IS_CREATION_ENABLED=true \
-e IS_DASHBOARD_ENABLED=true \
-e IS_REGISTRATION_ENABLED=false \
-e CONNECT_WITH_FRANZ=true \
-p 1974:3333 \
-v /home/aerya/docker/ferdiserver/config:/data \
-v /home/aerya/docker/ferdiserver/recipes:/app/recipes \
--restart always \
getferdi/ferdi-server

Par rapport à l'ancienne configuration, il faut changer le port 80 pour 3333 et pour les volumes on passe de

-v /home/aerya/docker/ferdiserver/config:/config \
-v /home/aerya/docker/ferdiserver/db:/app/database \
-v /home/aerya/docker/ferdiserver/recipes:/app/recipes \

à

-v /home/aerya/docker/ferdiserver/config:/data \
-v /home/aerya/docker/ferdiserver/recipes:/app/recipes \

On garde le /config local qui sera le seul à être monté dans le /data du Docker. De fait il faut déplacer le contenu de l'ancien volume local /db dans /config.

On relance et tout tourne normalement.

Mots clés