Synology Docker Container Manager Review
This is a version of Docker intended for use on a Synology NAS
What Is Docker?
Many people have heard of or used a virtual computer or virtual server at some point.
Using virtualization, you can have multiple operating systems running on a single hardware server.
Each virtual machine requires an operating system and licensing and maintenance such as Windows
updates.
Docker takes virtualization a step further. It allows you to virtualize the application itself.
There is no need to run a separate operating system and no need to run Windows updates on each
virtual machine. Application virtualization requires a lot less in the way of
memory, processor, disk space and electricity than a regular virtual machine.
Docker is a tool that helps software run the same way everywhere, no matter where it’s
installed.
One of the biggest problems in computing is that software depends on its environment. An application
might need a specific operating system, certain versions of supporting programs, or special
configuration settings. When those don’t match, things break. That’s where the familiar phrase comes
from: “It works on my computer.”
Docker solves this by packaging an application together with everything it needs to run. This
package is called a container.
What Is a Container?
A container includes the application itself, the tools it relies on, and its
configuration, all bundled into one unit. If a system can run Docker, it can run that container
exactly the same way every time.
A helpful comparison is a shipping container. It can travel by ship, train, or truck, but the
contents stay the same and arrive intact. Docker containers work the same way, moving from a laptop
to a server to the cloud without changing how the software behaves.
Docker vs. Virtual Machines
Docker containers are often compared to virtual machines, but they work
differently.
Virtual machines act like full computers with their own operating systems. This makes them larger,
slower to start, and more resource-intensive. Containers share the main system instead, which makes
them faster, lighter, and easier to manage.
Why People Use Docker
Docker makes software easier to install, more consistent, and simpler to maintain.
Applications that once took hours to set up can often be started with a single command. If something
goes wrong, a container can be deleted and recreated without affecting the rest of the
system.
Use Cases
Docker is used in many everyday situations, not just large data centers.
One common use case is running websites and web applications. Docker can package a web server,
database, and programming language into a single setup that runs the same everywhere.
Docker is also widely used for testing software. Developers can safely test changes without breaking
their main system, then throw the container away when they’re done.
Another use case is deploying applications to servers or cloud platforms. Because Docker containers
behave consistently, there are fewer surprises when software goes live.
Docker is also helpful for keeping older software running. Applications that require outdated tools
can be isolated inside a container without interfering with newer programs on the same machine.
You can use Docker for quite a few different applications. Docker can turn a Synology NAS in to a
nice little small office / home office server. The items listed here are just a hand-full of
possibilities.
- Pi-Hole web filter
- Ubiquiti controller software
- Smart home controller software
- Low use virtual machines
What Docker Is Not
Docker is not a programming language, not a replacement for an operating system, and not
something only large companies can use. Small teams and individuals use Docker every day to save
time and avoid setup problems.
Discovery
Synology NAS hardware not only functions as a NAS. It allows a user to run additional
software via the use of Docker. It's ability to virtualize is one of the main reasons I
picked Model 723+ for my home office. My goal was to run Pi-Hole using Docker to eliminate the use
of a separate Linux desktop.
Installation
Once the NAS is already installed on the network, login to DSM and open 'Package
Manager'. Search for and select 'Docker Container Manager' and choose to install.
Installation Docker itself is that easy!
Decide what you want to virtualize. You may have as many containers as you like and are only limited
by the memory and processor capabilities of the hardware. I've had 3 going at once on my Synology
NAS but I could certainly have more.
Configuration of the containers is a bit harder and will vary based on what application you are
trying to containerize. Luckily, there is plenty of online documentation available to configure
pretty much any Docker container that you plan to use. You can also create your own new custom
container with an application that hasn't virtualize by anyone else. However, figuring out settings
will be up to you. This could take some trial and error to determine out what works.
First Impressions
I have only installed and configured Docker Container Manager a couple of times. It was
straight forward as each app has its own documentation that includes the settings it will need for
Docker. The results have been great! I have no complaints or issues. Once installed and configured,
you really don't do anything else with it. Just set it and forget it. You may have an the occasional
update to the docker container. That is simply a few mouse clicks to initiate the download/update
process.