2026-06-02 19:57:24 +02:00
2026-06-02 19:55:35 +02:00
2026-06-02 19:57:24 +02:00
2026-06-02 19:55:35 +02:00
2026-06-02 19:55:35 +02:00
2026-06-02 19:55:35 +02:00
2026-06-02 19:55:35 +02:00
2026-06-02 19:55:35 +02:00
2026-06-02 19:55:35 +02:00
2026-06-02 19:55:35 +02:00
2026-06-02 19:57:24 +02:00

nas-ops

Scripts de maintenance et de mise à jour pour NAS sous Debian / OpenMediaVault 8.

Gère les mises à jour système (apt) et Docker (docker compose), avec deux modes :

  • Terminal interactif : affichage coloré, confirmations
  • Non-interactif (Home Assistant, cron) : output JSON

Installation

curl -fsSL https://raw.githubusercontent.com/GuiPoM/nas-ops/main/install.sh | bash

Les scripts sont installés dans /usr/local/bin/ et disponibles directement en ligne de commande.

Scripts

nas-update

Script racine interactif. Orchestre toutes les étapes dans l'ordre :

  1. Analyse système (apt)
  2. Pull et détection des mises à jour Docker
  3. Upgrade système (confirmation)
  4. Upgrade Docker (tout ou conteneur par conteneur)
  5. Nettoyage des images orphelines
nas-update

nas-update-system

Vérifie les mises à jour système disponibles via apt. Ne modifie rien.

  • Mode terminal : affichage coloré des paquets upgradables
  • Mode non-interactif (HA) : output JSON
nas-update-system
{"count":2,"reboot_required":false,"packages":[{"name":"curl","current":"7.88.0","available":"7.88.1"}]}

nas-upgrade-system

Applique les mises à jour système (apt full-upgrade).

  • Mode terminal : affiche le bilan + confirmation avant d'appliquer
  • Mode non-interactif (HA) : applique directement
nas-upgrade-system

nas-docker-pull

Pull toutes les images Docker des conteneurs actifs et détecte les mises à jour disponibles. Ne recrée pas les conteneurs.

Idempotent : tant que nas-docker-up n'a pas recréé les conteneurs, le check détecte toujours l'écart.

  • Mode terminal : affichage coloré
  • Mode non-interactif (HA) : output JSON
nas-docker-pull
{"count":1,"containers":[{"name":"jellyfin","image":"jellyfin/jellyfin:latest","compose_dir":"/opt/stacks/jellyfin","current":"10.9.0","available":"disponible"}]}

nas-docker-up

Recrée les conteneurs sur la nouvelle image via docker compose up -d --remove-orphans.

  • Sans argument : propose la mise à jour de tous les conteneurs ayant une image plus récente
  • Avec argument : cible une stack spécifique
  • Mode terminal : confirmation par stack ou tout d'un coup
  • Mode non-interactif (HA) : applique directement
nas-docker-up              # toutes les stacks
nas-docker-up jellyfin     # stack spécifique

nas-docker-prune

Nettoie les images Docker orphelines (dangling). À appeler après nas-docker-up.

nas-docker-prune

Intégration Home Assistant

Voir nas-ha-config.yaml pour la configuration complète.

shell_command:
  nas_update_system: "ssh -F /config/.ssh/config omv 'sudo nas-update-system'"
  nas_upgrade_system: "ssh -F /config/.ssh/config omv 'sudo nas-upgrade-system'"
  nas_docker_pull: "ssh -F /config/.ssh/config omv 'sudo nas-docker-pull'"
  nas_docker_up: "ssh -F /config/.ssh/config omv 'sudo nas-docker-up'"
  nas_docker_up_stack: "ssh -F /config/.ssh/config omv 'sudo nas-docker-up {{ stack }}'"
  nas_docker_prune: "ssh -F /config/.ssh/config omv 'sudo nas-docker-prune'"

Flux typique depuis HA

nas_docker_pull    →  détecte les mises à jour dispo (idempotent)
nas_docker_up      →  applique les mises à jour
nas_docker_prune   →  nettoie les anciennes images
S
Description
No description provided
Readme 52 KiB
Languages
Shell 100%