đž Tracim sur mon NAS, partie 2: Service Systemd pour conteneur Podman
Introduction
Lors des prĂ©cĂ©dents articles, je couvrais le fait de gĂ©nĂ©rer une image conteneur pour Tracim, les images sont prĂȘts, il est temps de les utilisĂ©s !
Mise en route de lâimage avec Podman et Systemd
Pour ce faire, je prĂ©pare la commande pour lancer le conteneur Tracim avec les bons paramĂštres, pour le cas dâune configuration trĂšs minimal, il est possible de faire comme dans le script donnĂ© ci-dessous.
A notez:
- câest un conteneur en mode utilisateur, il ne demande pas de droits super-utilisateur afin de limiter les risques de sĂ©curitĂ©.
- Câest une configuration Tracim trĂšs basique, qui ne tire par profit du plein potentiel du logiciel.
- Lâexemple ici demande lâexistence dâun reverse-proxy capable de rediriger le port de sortie 7070 vers lâinternet, autrement seul le NAS sera capable dâaccĂ©der au site.
- Jâai limitĂ© les ressources utilisables par lâimage via les paramĂštres cpu et memory.
podman run -d -e "DATABASE_TYPE=sqlite" \
-e "START_CALDAV=1" \
-e "START_WEBDAV=1" \
-e "TRACIM_WEBSITE__BASE_URL=https://tracim.ndd.tld" \
-e "TRACIM_WEBDAV__BASE_URL=https://tracim.ndd.tld" \
-e "TRACIM_WEBSITE__TITLE=Tracim" \
-e "TRACIM_WEBSITE__DESCRIPTION=Mon espace partagé !" \
-e "TRACIM_DEFAULT_LANG=fr" \
-p "127.0.0.1:7070:80" \
-v "$HOME//tracim/etc:/etc/tracim" \
-v "$HOME/tracim/var:/var/tracim" \
--cpus=2 \
--memory=2g \
--name tracim \
inkhey/tracim:4.5-no-vtk
Pour une gestion un peu plus propre, il est possible de convertir cette configuration en service Systemd de la sorte :
podman stop tracim
podman generate systemd -n tracim > ~/.config/systemd/user/tracim.service
systemctl --user daemon-reload
systemctl --user enable tracim
systemctl --user start tracim
Vous avez ainsi un Tracim fonctionnel via Podman donc le cycle de vie est gérable via Systemd, pas mal non ?
Bonus : convertir en fichier de configuration pour kubernetes
Je nâutilise pas personnellement Kubernetes, mais Podman permet facilement de convertir un conteneur existant en configuration compatible
podman generate kube -f tracim.yml tracim
On peut aussi démarrer une configuration de type kubernetes :
podman play kube ./tracim.yml