feat(updates): NetBird container image update management
- New image_service.py: Docker Hub digest check (no pull), local digest/ID
comparison, pull_all_images, per-customer container image status, and
update_customer_containers (docker compose up -d, data-safe)
- Monitoring endpoints: GET /images/check (hub vs local + per-customer
needs_update), POST /images/pull (background), POST /customers/update-all
- Deployment endpoint: POST /{id}/update-images (single-customer update)
- Monitoring page: "NetBird Container Updates" card with Check / Pull / Update
All buttons; image status table and per-customer update table with inline
update buttons
- i18n: added keys in en.json and de.json
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -280,7 +280,26 @@
|
||||
"thDashboard": "Dashboard",
|
||||
"thRelayPort": "Relay Port",
|
||||
"thContainers": "Containers",
|
||||
"noCustomers": "No customers."
|
||||
"noCustomers": "No customers.",
|
||||
"imageUpdates": "NetBird Container Updates",
|
||||
"checkUpdates": "Check for Updates",
|
||||
"pullImages": "Pull Latest Images",
|
||||
"updateAll": "Update All",
|
||||
"clickCheckUpdates": "Click \"Check for Updates\" to compare local images with Docker Hub.",
|
||||
"updateAvailable": "Update available",
|
||||
"upToDate": "Up to date",
|
||||
"needsUpdate": "Needs update",
|
||||
"updateCustomer": "Update this customer",
|
||||
"imageStatusTitle": "Image Status (vs. Docker Hub)",
|
||||
"customerImageTitle": "Customer Container Status",
|
||||
"thImage": "Image",
|
||||
"thLocalDigest": "Local Digest",
|
||||
"thHubDigest": "Hub Digest",
|
||||
"confirmPull": "Pull the latest NetBird images from Docker Hub? This may take a few minutes.",
|
||||
"pullStarted": "Image pull started in background. Re-checking in 5 seconds…",
|
||||
"confirmUpdateAll": "Recreate containers for all customers that have outdated images? Running services will briefly restart.",
|
||||
"updateAllStarted": "Update started in background.",
|
||||
"updateDone": "Customer containers updated."
|
||||
},
|
||||
"userModal": {
|
||||
"title": "New User",
|
||||
|
||||
Reference in New Issue
Block a user