Updating Synaccess CMP (Docker)
This guide explains how to know when an update is available, how to apply the update with Docker Compose, and how to verify / roll back if needed.
How you’ll know about updates
- Release email notifications — ask us to add you to the update list: [email protected] (subject: “Add me to Synaccess CMP update notifications”).
- Manual check — if your Compose file uses
image: synaccess.azurecr.io/syn-cloud:${TAG:-latest}withpull_policy: always, runningdocker compose up -dwill check for and apply the newestlatestimage. - Changelog: We publish every release at synaccess.readme.io/changelog.
If your
.envcontains aTAG=..., you are pinned to that version and won’t getlatestautomatically (see Pinning & rollback below).
Quick update (most deployments)
From your deployment folder (e.g., /opt/syn-cloud):
# 0) (First time only or if credentials expired)
docker login synaccess.azurecr.io -u <TOKEN_USER> -p '<TOKEN_PASSWORD>'
# 1) Pull any newer images referenced by docker-compose.yml
docker compose pull
# 2) Recreate the service with the new image (keeps volumes/config)
docker compose up -d
# 3) Sanity check
docker compose ps
docker compose logs --tail=100 syn-cloudThis is safe to run repeatedly; if nothing changed, Compose won’t restart the container.
Verify what version you’re running
# Show images in use by the stack
docker compose images
# Show the exact digest of the running image
docker inspect --format='{{index .RepoDigests 0}}' synaccess.azurecr.io/syn-cloud:latest
# If you’re pinned (TAG set), replace :latest with your tag
docker inspect --format='{{index .RepoDigests 0}}' synaccess.azurecr.io/syn-cloud:<YOUR_TAG>Pinning & rollback (simple, edit-free workflow)
Your docker-compose.yml should reference:
image: synaccess.azurecr.io/syn-cloud:${TAG:-latest}
pull_policy: alwaysTrack newest automatically (default):
- Leave
TAGunset in.env→ you followlatest. - Update command:
docker compose pull && docker compose up -d
Pin to a specific release (freeze / rollback):
- Set
TAGin.env(for example):TAG=2025.10.02 - Apply:
docker compose up -d - To rollback, change
TAGto a previous version and run the same command.
Return to auto-updates:
- Remove the
TAG=line (or comment it out) in.env, then:docker compose pull && docker compose up -d
Maximum reproducibility (advanced):
- Pin by digest instead of tag:
Find the digest after a pull with:
image: synaccess.azurecr.io/syn-cloud@sha256:<digest>docker inspect --format='{{index .RepoDigests 0}}' synaccess.azurecr.io/syn-cloud:<tag>
Scheduling updates
- Maintenance window: expect a brief interruption while the container restarts.
- Devices re-connect automatically: PDUs will re-establish telemetry/websocket connections once the app is back up.
Troubleshooting
-
401 Unauthorized when pulling
docker login synaccess.azurecr.io -u <TOKEN_USER> -p '<TOKEN_PASSWORD>'Re-check that your token is current and scoped for pull.
-
No updates appear
- You may be pinned. Check
.envforTAG=.... Remove it to followlatest, or change to the new version tag. - Ensure
pull_policy: alwaysis present (or rundocker compose pullexplicitly).
- You may be pinned. Check
-
DNS / network errors
nslookup synaccess.azurecr.io curl -I https://synaccess.azurecr.io/v2/ || trueAllow outbound HTTPS (443) from the host to the registry.
-
Config changes not applied
- Edit
.envand re-run:docker compose up -d - If needed, force recreation:
docker compose up -d --force-recreate
- Edit
Need update notifications?
Email [email protected] and ask to be added to the Synaccess CMP update newsletter. We’ll notify you when a new image is published and include highlights and tag details.
Updated about 2 months ago