Synology Docker Download

Synology and Docker

The Synology Docker Download are a great combination, provided you have purchased the right platform. Make sure you use the Intel chipset if you want to make full use of Docker functionality. In addition, adding additional hardware resources (such as adding memory) is the best way to maximize your Synology Docker host. To find out whether your Synology Diskstation has an Intel chipset, look no further than the Synology Wiki.

If you have not installed Docker on your DSM platform, you must do so by logging into your DSM and opening the Package Center. Once there, you can search for the Docker application and install it easily on your system. The first thing you want to consider is the backend data persistence. It's quite convenient that we run this entire Docker environment on the NAS, right? You can choose yourself, or use my example.

Docker Installation on DSM

The next thing you want to do is activate CLI connectivity to your Diskstation (if you haven't activated it). My assumption is that if you are interested in Docker, you might have activated it, but if not I will give the steps below:

Open your Synology Diskstation Control Panel and select "Terminal and SNMP". Once there, check "Enable SSH Services" and I would strongly recommend choosing a random port in the TCP Ephemeral Port Range in Synology Docker Download.

Download Synology Docker 

Synology Docker
Free Driver

SSH High Port

There is no point in documenting this process further, but you get the idea. My main concern is that you enable SSH, and use random high ports. For further reading, follow the instructions in the Synology wiki. Next, you want to create a persistent data directory to use Docker. I will continue to use the Synology method as close as possible. So if you haven't run Docker, create a directory in / volume1 / docker /.
  • DISKSTATION01> mkdir -p / volume1 / docker /
  • DISKSTATION01> chown root: root / volume1 / docker /
  • Anything directly in / volume1 / must be owned by root.

Now you want to create a directory for your Docker container. I will show you how to do that for each example.

Examples of Containers on Technology

Below are some examples that you can use. This is more developer-focused, but you will get the idea.
The first example is a fairly simple one; Ghost Blog! Ghost is what I use to give you this walk-through. I like it because it's simple and interesting. It uses an easy-to-use price drop language. This is a similar language used by GitHub / Gist, GitLab, Atlasian Stash and many tools. 

So if I create a walk-through blog, in many cases I can use the same code for my GitHub repository, as I have done for my Kubelab Example. Enough with the benefits of Ghost, let's go to the part where we run it. Create a directory for Ghost and change the permission for Docker to use it correctly.
  •  DISKSTATION01> set -p / volume1 / docker / jinkit / ghost
  •  DISKSTATION01> chown 1000: 1000 / volume1 / docker / jinkit / ghost

Note that I created the directory / volume1 / docker / jinkit /. I recommend doing this so that you have one place to store all your custom Docker configuration data. This makes your personalized Docker container separate from what Synology will include, if you choose to use their default Docker application (like Gitlab or Redmine).

I also changed the permissions to 1000: 1000 which is the user that Synology uses to map their default Docker data folder. This is something I would like to see further, especially after reading the Alexander Morozov namespace example (LK4D4 on Github), because I really want to limit the container that is running in privileged mode, and so do you (if possible).

DISKSTATION01> run docker -d --name jinkit_ghost --restart = always -p <tcp-high-port>: 2368 -v / volume1 / docker / jinkit / ghost: / var / lib / ghost ghost: newest So what I do is I have told Docker to restart this container always (quite clearly), use the high TCP port (which you want to change yourself) and map the data folder that we created to the default Ghost configuration data folder in the container.

The really good thing about Docker is that the mapped host directories take priority over what is in the container (as I experienced). If there is data in that folder (like you were setting before and Ghost Blog) than it will prioritize it above the container. This is good for destroying and re-creating containers.

GitLab Synology Docker

GitLab is a very powerful development tool. I won't say that I like it better than GitHub, but there are some features that I really like. One such feature is the ability to map my GitHub repository to my GitLab repo locally, and then run with Synology Docker Download.