1
0
forked from jchomaz/Vulture
Files
Vulture/VContainers/README.md

2.4 KiB

VContainer - Vulture build script

Construction et lancements des containers. Toutes les commandes sont à taper depuis la racine du dépôt.

Build

./VContainers/build.sh

Ou manuellement :

podman build . -f ./VContainers/VNode/Containerfile -t vnode
podman build . -f ./VContainers/VApp/Containerfile -t vapp

Run

Mode Manuel avec Scripts

Développement (localhost):

./VContainers/run_dev.sh

Production (IP 192.168.73.252):

./VContainers/run_prod.sh

Les containers sont lancés sur le réseau bridge vulture-net :

  • nanomq : Broker MQTT (ports 1883, 9001, 8081, 8083, 8883)
  • vnode : Services Node.js backend
  • vapp : Frontend Vue.js (port 8080)

Stop

./VContainers/stop.sh

Ou manuellement :

podman stop vapp vnode nanomq
podman network rm vulture-net

Lancement automatique avec Quadlet

Copier les fichiers du répertoire quadlet vers ~/.config/containers/systemd/

cp ./VContainers/quadlet/*.network ~/.config/containers/systemd/
cp ./VContainers/quadlet/*.container ~/.config/containers/systemd/

Pour l'environnement de développement :

systemctl --user daemon-reload
systemctl --user enable --now nanomq.service
systemctl --user enable --now vnode.service
systemctl --user enable --now vapp_dev.service

Pour l'environnement de production :

systemctl --user daemon-reload
systemctl --user enable --now nanomq.service
systemctl --user enable --now vnode.service
systemctl --user enable --now vapp_prod.service

Vérifier le statut :

systemctl --user status nanomq.service vnode.service vapp_dev.service

Arrêter les services :

systemctl --user stop vapp_dev.service vnode.service nanomq.service
systemctl --user disable vapp_dev.service vnode.service nanomq.service

Configuration

Les fichiers de configuration se trouvent dans VContainers/VApp/config/ :

  • config_dev.js : Configuration développement (MQTT sur localhost)
  • config_prod.js : Configuration production (MQTT sur 192.168.73.252)

Vous pouvez modifier ces fichiers selon vos besoins. En mode manuel, redémarrez les containers. Avec Quadlet, redémarrez le service correspondant :

systemctl --user restart vapp_dev.service

Tip

Pour permettre à Podman d'utiliser les ports privilégiés (<1024) :

sudo sysctl -w net.ipv4.ip_unprivileged_port_start=80