---
title: Dockcheck
created: 2026-06-07
updated: 2026-06-07
type: app
tags: [catalogue, docker, mise-a-jour, cli, shell, auto-hebergement]
confidence: high
contested: false
sources: [https://selfh.st/apps/?tag=Docker, https://github.com/mag37/dockcheck]
---

# 🐳 Dockcheck

> **Le check-up update pour vos conteneurs, en une commande** : un script shell léger qui scanne vos images, détecte les MAJ, et met à jour d'un coup. Le compagnon idéal de [[app-diun]] et [[app-watchtower]] pour les amateurs de CLI.

## 📋 Informations Générales

| Champ | Valeur |
| :--- | :--- |
| **Site web** | (GitHub) |
| **GitHub** | [mag37/dockcheck](https://github.com/mag37/dockcheck) |
| **License** | MIT |
| **Langage** | Shell (Bash) |
| **Étoiles GitHub** | 2345 ⭐ |
| **Dernière MAJ** | 2026-05-30 |
| **Catégorie** | [[cat-docker\|Docker]] |

## 📝 Description

**Dockcheck** est un **outil en ligne de commande (CLI)** qui interroge le registre Docker Hub (ou d'autres registres) pour comparer l'image locale de chaque conteneur avec la dernière version disponible, et vous indique lesquelles peuvent être mises à jour.

Contrairement à [[app-watchtower]] ou [[app-diun]] qui tournent comme des démons, **Dockcheck est un script ponctuel à lancer à la demande** (ou via cron). C'est l'outil parfait pour les sysadmins qui veulent garder le contrôle : *vous* décidez quand mettre à jour, *vous* lisez la sortie, *vous* validez.

- ✅ **Scan multi-registres** : Docker Hub, GHCR, Gitea, Quay, Forgejo, GitLab, Amazon ECR…
- ✅ **Multi-hôte** : peut se connecter en SSH à plusieurs machines pour les mettre à jour
- ✅ **Auto-update sélectif** : flag `-y` pour confirmer, `-a` pour tout accepter, ou choisir par numéro
- ✅ **Notifications** : Discord, Telegram, Slack, Pushover, Ntfy, Gotify, email
- ✅ **Backups automatiques** : option `--stop-start` pour arrêter / redémarrer proprement
- ✅ **Aucune dépendance lourde** : juste `bash`, `curl`, `jq`, `docker` (et `dialog` pour le mode TUI)
- ✅ **Mode TUI interactif** : affiche une liste sélectionnable si `dialog` est installé
- ✅ **Cron-friendly** : un wrapper `dockcheck-cron.sh` est fourni pour les exécutions planifiées

**Dockcheck vs Diun** : Diun *notifie* quand une MAJ existe (passif), Dockcheck *agit* (actif). Les deux sont complémentaires. Dockcheck vs Watchtower : Watchtower met à jour tout seul, sans validation ; Dockcheck laisse l'humain décider.

## 🚀 Installation

### Standalone (CLI sur l'hôte, méthode recommandée)

```bash
# Téléchargement du script
sudo curl -L https://raw.githubusercontent.com/mag37/dockcheck/main/dockcheck.sh -o /usr/local/bin/dockcheck
sudo chmod +x /usr/local/bin/dockcheck

# Premier lancement : scan des conteneurs locaux
dockcheck
```

### Docker (le script dans un conteneur, lit le socket)

```yaml
# docker-compose.yml
version: '3.8'
services:
  dockcheck:
    image: ghcr.io/mag37/dockcheck:latest
    container_name: dockcheck
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock:ro
    environment:
      - TZ=Europe/Paris
    labels:
      - "traefik.enable=false"  # pas d'UI web
```

### Cron quotidien avec notifications

```bash
# /etc/cron.d/dockcheck
0 4 * * * root /usr/local/bin/dockcheck -y -n  # scan + MAJ auto + notif
```

## ⚙️ Configuration Initiale

1. **Pré-requis** : `docker`, `curl`, `jq`. Installer via `apt install -y curl jq` (Debian/Ubuntu) ou équivalent
2. **Premier scan** : `dockcheck` (sans arguments) affiche la liste des MAJ disponibles, sans rien modifier
3. **Mode interactif** : `dockcheck -i` ouvre une TUI `dialog` pour cocher les conteneurs à mettre à jour
4. **Configurer les notifications** : créer un fichier de config (`~/.config/dockcheck.conf`) ou exporter des variables d'environnement (`NOTIFIY_DISCORD_WEBHOOK=…`)
5. **Tester sur un hôte distant** : configurer `~/.ssh/config` puis `dockcheck -H user@host1,user@host2`
6. **Ajouter à un cron** : exécution quotidienne ou hebdomadaire selon votre politique de MAJ

## 🔄 Alternatives

### Open Source
- [[app-diun]] — Notifications de MAJ (passif, daemon)
- [[app-watchtower|WUD]] — Updates automatiques (actif, daemon)
- [[app-cup-updates|Cup]] — UI web simple pour MAJ à la demande
- [[app-patchpanda|PatchPanda]] — Mise à jour de stacks Compose
- **Crane / Skopeo** — outils bas niveau pour inspecter les images

### Comparaison Dockcheck vs alternatives

| Critère | Dockcheck | Diun | Watchtower | Cup |
| :--- | :--- | :--- | :--- | :--- |
| Type | CLI ponctuel | Daemon notif | Daemon MAJ | GUI web |
| Updates auto | ❌ (manuel) | ❌ | ✅ | ❌ |
| Validation humaine | ✅ | ❌ | ❌ | ✅ |
| Multi-host | ✅ (SSH) | ❌ | ❌ | ❌ |
| Notifications | ✅ | ✅ | ✅ | ❌ |
| Setup | 2 min | 5 min | 5 min | 5 min |

**Verdict** : Dockcheck est **la référence pour les admins CLI**. Si vous aimez le contrôle fin et la lecture des logs, c'est lui. Si vous voulez du « set & forget », [[app-watchtower|Watchtower]]. Si vous voulez juste être notifié, [[app-diun]].

### Propriétaires (ce que Dockcheck remplace)
- **Snyk Container** (payant, scan de vulnérabilités)
- **Docker Trusted Registry** (payant, deprecated)
- **Portainer auto-update** (payant en Business Edition)

## 🔐 Sécurité

- ⚠️ **Socket Docker monté = accès root** : limiter à `ro` (read-only) et envisager [[app-docker-socket-proxy-docker|docker-socket-proxy]]
- **Vérifier les images avant update** : ne jamais faire `dockcheck -y` en aveugle sur des images non officielles ; lire la release notes
- **Rollback** : garder un tag `:previous` ou utiliser [[app-tugtainer]] pour les backups avant update

## 📚 Ressources

- [GitHub mag37/dockcheck](https://github.com/mag37/dockcheck)
- [Wiki & exemples](https://github.com/mag37/dockcheck/wiki)
- [Tutoriel fr (Wiki)](https://wiki.example.com/dockcheck)

## Pages Liées
- [[cat-docker]] — Catégorie Docker
- [[app-portainer]] / [[app-dockge]] / [[app-yacht]] — GUI Docker
- [[app-traefik]] — Reverse-proxy
- [[recettes-docker-compose]] — Compose files
- [[securisation-home-lab]] — Bonnes pratiques
