Docker on Synology NAS
Docker on a Synology NAS runs through the Container Manager package — the DSM 7.2+ name for the old Docker package — installed for free from Package Center on supported models. It gives you an image registry browser, a container wizard, and a Projects tab that runs a docker-compose.yml directly. The two settings that decide whether the setup survives are volume mapping and port choice; both are covered below.
Installing Container Manager
- Open Package Center on your Synology DSM.
- Search for Container Manager (formerly "Docker").
- Click Install.
The Basics
Downloading Images
In the Registry tab, you can search for images from Docker Hub.
- Tip: Always look for the "Official Image" tag or high star counts.
- Select the tag (usually
latestor a specific version like1.21).
Launching a Container
When you launch an image, the wizard guides you through the settings.
1. Network
- Bridge: The default. The container gets its own IP on an internal network. You must map ports (e.g., Local Port 8080 -> Container Port 80).
- Host: The container shares the NAS's IP address. No port mapping needed, but watch out for port conflicts with DSM services (like port 5000/5001).
2. Volume Settings (Crucial!)
Docker containers are ephemeral. If you delete the container, the data inside is gone. Always map important data to a folder on your NAS.
- File/Folder: Select a folder on your Synology (e.g.,
/docker/my-app/config). - Mount path: The path inside the container where the app expects data (e.g.,
/config).
Docker Compose on Synology
The Container Manager UI now supports Docker Compose (called "Projects").
- Go to the Project tab.
- Click Create.
- Name your project.
- Select a path (where the
docker-compose.ymlwill be saved). - Paste your
docker-compose.ymlcontent directly into the editor. - Click Next and then Done.
This is much better than managing individual containers manually because you can update the entire stack easily.
Limitations of Synology Docker
- Kernel Version: Synology Linux kernels are often older. Some modern Docker features or containers requiring specific kernel modules (like WireGuard) might be tricky.
- Performance: Lower-end "j" series models might not support Docker or have limited RAM.
- Port Conflicts: DSM uses many ports (80, 443, 5000, 5001, 8080). You often need to map container ports to non-standard ports (e.g., 8081).
FAQ
Frequently asked questions
How do I install Docker on a Synology NAS?
Open Package Center in DSM, search for Container Manager (it is called Docker on DSM versions before 7.2), and click Install. The package is free. If it does not appear in Package Center, the NAS model does not support it.
What is Container Manager on Synology?
Container Manager is the renamed Docker package introduced in DSM 7.2. It runs the same Docker engine and adds a Projects tab for Docker Compose. Containers created under the old Docker package keep working after the upgrade.
Can I run Docker Compose on a Synology NAS?
Yes. In Container Manager, open the Project tab, click Create, name the project, pick a folder on the NAS to store the file, and paste your docker-compose.yml into the editor. Container Manager brings the whole stack up and lets you update it in one action.
Why does my Synology container lose its data?
Because nothing was mapped to the NAS. A container's own filesystem is deleted with the container. In the launch wizard, add a volume for every data path: pick a folder on the NAS, such as /docker/my-app/config, and set the mount path the app expects, such as /config.
Which ports are safe to use for containers on Synology?
Avoid 80, 443, 5000, 5001 and 8080 — DSM itself uses them. Map container ports to a free high port instead, for example local port 8081 to container port 80. Host network mode shares the NAS IP directly, so it hits these conflicts most often.
Should I use bridge or host network mode on Synology?
Use bridge for almost everything: the container gets its own internal IP and you publish only the ports you choose. Use host mode only when the app needs to see the LAN directly, such as for mDNS discovery, and accept that every port it opens must be free on the NAS.
How do I update a container on Synology?
For a Project, use the Build or Action menu to pull the newer images and recreate the stack. For a single container, download the newer image tag in the Registry tab, then stop, clear and start the container so it picks up the new image. Mapped volumes keep the data across the update.
Why do some Docker containers not work on a Synology NAS?
Synology ships older Linux kernels and a locked-down module set, so containers that need specific kernel features, such as WireGuard, may not run. Low-end J-series models also lack the CPU support or the RAM for Container Manager entirely.
Outgrown your NAS?
If your NAS is struggling with performance or you want to expose services to the internet securely without opening ports on your home router:
Hostim.dev offers a secure, cloud-based alternative for your Docker containers, with no hardware to manage.