Install Domoticz on NAS Synology DS718+ with Docker or virtual machine under Debian Buster

install domoticz on docker or vm debian nas synology
Share on facebook
Share on twitter
Share on linkedin
Share on pinterest
Share on email
Share on whatsapp

The official documentation suggests installing Domoticz on a Synology NAS from an image pre-compiled by Jadahl or by compiling the source code directly on the NAS. Compiling from source code takes a little too much work for me. So I started installing the package for my DS718+ prepared by Jadahl … without success. Fortunately, we still have two other solutions to install Domoticz on a Synology NAS. Install Domoticz on a Virtual Machine as we have already done with Jeedom or install Domoticz in a Docker container.

 

In either case, a compatible Synology NAS will be required. For virtualization, you will need at least 4GB of RAM. Synology states that it is possible to expand the memory up to 6GB for the DS218+ and DS718+ models, but it is possible to go further. I installed 8GB on a DS718+ without difficulty. Some users have already installed 16GB but the interest is quite limited considering the processors used for entry-level NAS.

Configuration tested: DS718+, 8GB RAM, 2x2TB

Synology’s Virtual Machine Manager application requires at least 4GB of RAM to operate.

nas synology ds718 plus

I installed an 8GB memory extension (2x4GB DDR3L SO-DIMM from Crucial) on my DS718+. It is quite difficult to access the main connector, which is why Synology announces that the DS218+ and DS718+ models only support 6GB of RAM.

nas synology ds218 ds718 plus ram extension 8gb crucial

The NAS is equipped with two 2 TB hard drives each Western Digital RED brand suitable for intensive use. This is more than enough for home automation, a multi-media file server and even network video surveillance (on condition that the recording time and quality are limited).

Remember to protect your NAS with an UPS.

Last update was on: 6 July 2020 3 h 00 min

Other Synology NAS compatible with Docker

To install Mosquitto in a Docker container, you need a compatible NAS. They are essentially NAS equipped with Intel processors. Here is the list of compatible Synology NAS models. The official list can be found on this page.

Series 19:RS1619xs+, RS1219+, DS2419+, DS1819+, DS1019+

Series 18:FS1018, RS3618xs, RS2818RP+, RS2418RP+, RS2418+, RS818RP+, RS818+, DS3018xs, DS1618+, DS918+, DS718+, DS218+

Series 17:FS3017, FS2017, RS18017xs+, RS4017xs+, RS3617xs+, RS3617RPxs, RS3617xs, DS3617xs, DS1817+, DS1517+

Series 16:RS18016xs+, RS2416RP+, RS2416+, DS916+, DS716+, DS716+II, DS216+, DS216+II

Series 15:RS815RP+, RS815+, RC18015xs+, DS3615xs, DS2415+, DS1815+, DS1515+, DS415+

Series 14:RS3614xs+, RS3614RPxs, RS3614xs, RS2414RP+, RS2414+, RS814RP+, RS814+

Series 13:RS10613xs+, RS3413xs+, DS2413+, DS1813+, DS1513+, DS713+

Series 12: RS3412RPxs, RS3412xs, RS2212RP+, RS2212+, RS812RP+, RS812+, DS3612xs, DS1812+, DS1512+, DS712+, DS412+

Series 11: RS3411RPxs, RS3411xs, RS2211RP+, RS2211+, DS3611xs, DS2411+, DS1511+, DS411+, DS411+II

Series 10: RS810RP+, RS810+, DS1010+, DS710+ (DSM v6+)

Open the SSH port of the NAS

If the SSH port is already open on your NAS, you can go to the next step.

Open the control panel and activate the advanced mode (in the upper left corner). Open the Terminal & SNMP panel then

Check Enable SSH service

  • Configure the port. By default, SSH uses port 22. To limit the risk of intrusion, you can modify it.
  • Apply the changes. It is not necessary to restart the NAS to take into account the new settings.

nas synology dsm 6.2 activate ssh port

Install Synology Docker Manager

The first thing to do is to install the Docker application developed by Synology. Open the Package Center and search for the keyword Docker in the search field. Click on Install.

install docker nas synology dsm 6.2

Recover the Docker Domoticz image

Launch the Docker application from the DSM menu.

nas synology docker application

Open the Registry panel and search for the keyword domoticz in the search field. Select the repository prepared by linuxserver.io. Start the download by clicking on Download in the options bar.

docker hub domoticz nas synology ds718 plus

Configure and start the Domoticz container

The image is uploaded to the image library. Open the tab, select the image and start creating the container by clicking on Launch.

create contenair docker domotics nas synology

You can customize the container name. Check Run container with elevated privileges to gain access to USB ports on Synology NAS.

nas synology domoticz create contenair

By default, the ports are automatically assigned by DSM when the container starts. It is not very practical because the port may change the next time the NAS or container is restarted. Open the advanced settings then go to the Port settings tab. Replace the local Auto port with the desired port. By default Domoticz uses port 8080.

nas synology domoticz port

Click on Apply then next. If everything looks correct, click Apply at the bottom of the summary window.

Note. All parameters can be modified after the creation of the container (provided that the container is stopped).

nas synology domoticz docker contenair creation

Open the Containers tab and open the Domoticz container details. As you can see, Domoticz consumes very few resources from the Synology NAS. Without any accessories and no script, Domoticz uses less than 1% of the CPU and 18MB of RAM! Suffice to say nothing at all.

status docker domoticz nas synology ds218 ds718

Add Z-Wave home automation accessories, RFLink radio …

Open the Domoticz interface and enter the IP address of the NAS followed by the port, for example

http://IP_NAS: 8080

To be able to access the home automation gateways connected to the Synology USB ports, it is essential to check the Execute container using elevated privileges option. On a DS718+, I successfully tested the addition of Z-Wave and RFLink accessories.

nas synology ds718 domoticz rflink zwave usb

Addition of Python plugins

Since everything was going well, I then tried to install Python plugins. For the record, we had already seen how to do it step by step in this tutorial.

The installation is quite simple but no plugin is loaded when starting Domoticz. There is no error message. I give you the steps hoping that one of you will find a solution. I also reported the problem to the Linux.server.io team.

Connect in SSH to Synology NAS then go root

sudo su -

Locate the Docker Domoticz installation directory by searching

find / -name domoticz

Like me, you risk having several installation directories.

docker domoticz install folder nas synology dsm 6.2

If so, you can clean up the volumes by running the command

plum volume docker

Get the PP-Manger project link on Github

pp-manager domoticz github url

Go to the Plugins folder then download the plugin using the wget command

cd /volume1/@docker/btrfs/subvolumes/b683e5ada7a9c3f5cccedba85be377890051a5de866b69ece57bfba4d7539290 / var / lib / domoticz / plugins
wget https://github.com/ycahome/pp-manarchive/master.zip

The unzip command is not available on DSM 6.2, instead, we have 7z

7z x master.zip

We rename the folder

mv pp-manager-master / pp-master

It only remains to restart the container. Unfortunately, Python Plugin Manager (or any other plugin) is not launched at the moment. If you know the solution, don’t hesitate to share it in the comments or on the forum :-).

Assessment of the operation of Domoticz under Docker

Despite a two-spoon installation, the operation of Domoticz in Docker is fairly mixed. The installation of Python plugin is quite simple but nothing helps, the plugins are not launched. I tried to restart the NAS (just in case), without success. Another negative point, after a restart of the NAS, Domoticz can no longer load the driver for the Z-Wave + controller. The only solution is to delete the hardware. If you restart after a prolonged power outage, you risk losing access to your Z-Wave + accessories. It’s a little annoying when you go on vacation!

FOR:

Quick and easy installation No configuration required (except the port) Ultra-light operation thanks to Docker (CPU load ~ 1%)

AGAINST:

Installation of Python plugin possible but plugins do not start (cause unknown at the moment) Loss of the Z-Wave controller after a reboot

Install Domoticz on a Debian Buster virtual machine

Faced with this mixed assessment, I tried a more classic installation on a virtual machine running Debian. We will not repeat here all the stages of creation of the VM.

Models compatible with Synology Virtual Machine Manager

Series 19: RS1619xs+, RS1219+, DS2419+, DS1819+, DS1019+

Series 18: FS1018, RS3618xs, RS2818RP+, RS2418RP+, RS2418+, RS818RP+, RS818+, DS3018xs, DS1618+, DS918+, DS718+, DS218+

Series 17: FS3017, FS2017, RS18017xs+, RS4017xs+, RS3617xs+, RS3617RPxs, RS3617xs, DS3617xs, DS1817+, DS1517+

Series 16: RS18016xs+, RS2416RP+, RS2416+, DS916+

Series 15: RS815RP+, RS815+, RC18015xs+, DS3615xs, DS2415+, DS1815+, DS1515+

Series 14: RS3614xs+, RS3614RPxs, RS3614xs

Series 13: RS10613xs+, RS3413xs+

Series 12: RS3412RPxs, RS3412xs, DS3612xs

Series 11: RS3411RPxs, RS3411xs, DS3611xs

Install Download Station

If you are already using Download Station you can go to the next step.

Open the package manager and search for the keyword Download. Install Download Station

nas synology download statio install

Install Virtual Machine Manager

If you are already using Virtual Machine Manager you can go to the next step.

Open the package manager and search for the keyword Download. Install Virtual Machine Manager

nas synology dsm install virtual machine manager

Recover Debian 10 image with Download Station

Go to the Debian site to get the distribution link. Take the amd64 netInstall version (even if the NAS is equipped with an Intel x86 processor). The download is fast even with an average connection. The archive weighs around 292MB. If you change your mind, you can install a graphical desktop at the end of the installation (or later).

url downolad debian stretch

Links to the NetInstall version (small Debian Buster image) can be found on this page.

Open Download Station and paste the link to the Debian Buster ISO file. Start the download by clicking OK.

synology download station debian stretch url

Creating a virtual machine under Debian 10

Open Virtual Machine Manager, open the Virtual Machine tab and click Create. In the dialog that opens, select Linux as the operating system.

nas synology ds718 vm linux domoticz hass jeedom

Choose a storage from the list

nas synology ds718 vm linux domoticz hass jeedom volume

Assign 1 or more processors (2 recommended), RAM (recommended 1GB) and the type of video card (vga recommended).

nas synology ds718 vm linux domoticz hass jeedom cpu ram

Indicate the size of the virtual hard disk (storage). 30 GB is more than enough. Click on browse in front of the ISO file option for startup and indicate the path to the previously downloaded Debian Buster ISO image.

nas synology vm storage iso debian stretch

Keep the default network configuration

nas synology network

Choose Yes for the Autostart option to start the virtual machine (Domoticz) when the NAS starts. Choose the keyboard type now. Choose USB 3.0 as virtual controller in order to be able to access home automation gateways (RFLink, Z-Wave, Zigbee …). USB accessories cannot be connected at this time.

nas synology virtaul machine debian usb keyboard autostart

Assign permissions to users

nas synology virtual machine permissions

The configuration is finished. Check Start the virtual machine after its creation then Apply.

nas synology virtual machine summary

You can also start the virtual machine manually by selecting it and clicking Power on.

start vm virtual machine manager synology

Once the machine is started, you can log in (connect) to install Debian.

nas synology connect vm

A VNC client opens in a new browser window.

nas synology start install virtual machine debian stretch

It only remains to follow the installation steps of Debian.

Assign a fixed IP address to the Debian virtual machine

For security, it is preferable to assign a fixed IP address to the virtual machine so that the home automation server is always accessible on the local network at the same address.

After the reboot, reconnect to the virtual machine and log in using the user account created during the installation of Debian. Open the interfaces file

sudo nano/etc/network/interfaces

Comment on the current configuration and paste this new configuration by adapting it to your parameters. Here the VM will be accessible at IP address 192.168.1.10

auto ens3
iface ens3 inet static
address 192.168.1.10
netmask 255.255.255.0
broadcast 192.168.1.255
gateway 192.168.1.1
dns-nameservers 192.168.1.1

Save with CTRL + X then Y. Then restart the system with the sudo reboot command.

Log in after reboot and run this command to verify that the IP address has been changed correctly

ip -4 a

The Debian virtual machine is easily accessible at the address 192.168.1.10 on the local network. You can now connect to it in SSH to easily install Domoticz.

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1
   inet 127.0.0.1/8 scope host lo
   valid_lft forever preferred_lft forever
2: ens3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
   inet 192.168.1.10/24 brd 192.168.1.255 scope global ens3
   valid_lft forever preferred_lft forever

Install Domoticz

Connect in SSH to the virtual machine. Connect in SSH using the Terminal (Linux or macOS) or PowerShell on Windows then execute the following command to recover Domoticz and start the installation.

curl -sSL install.domoticz.com | sudo bash

or

curl -L https://install.domoticz.com | bash

Just answer the few questions asked. You can keep the default settings.

 

Domoticz cannot start directly under Debian Stretch, however, because it lacks the libssl1.0.0 library.

Manually install the libssl1.0.0 library

If you try to connect to Domoticz, you will get an empty window and for good reason, by executing this command which allows to know the status of the service (sudo /etc/init.d/domoticz.sh status) you will get the next error

./domoticz: error while loading shared libraries: libssl.so.1.0.0: cannot open shared object file: No such file or directory

Impossible to install the library with a simple apt-get install command. You have to go get it directly from Debian here. Get the link to the library on the official website and run the wget command to download it.

wget http://security.debian.org/debian-security/pool/updates/main/o/openssl/libssl1.0.0_1.0.1t-1+deb8u11_amd64.deb

Finally, we install it manually

sudo dpkg -i libssl1.0.0_1.0.1t-1 + deb8u11_amd64.deb

It only remains to restart Domoticz

sudo /etc/init.d/domoticz.sh restart

And check that everything is working properly

domoticz.service - LSB: Home Automation System
   Loaded: loaded (/etc/init.d/domoticz.sh; generated; vendor preset: enabled)
   Active: active (exited) since Fri 2019-04-26 20:22:29 CEST; 3h 18min ago
     Docs: man:systemd-sysv-generator(8)
  Process: 2836 ExecStop=/etc/init.d/domoticz.sh stop (code=exited, status=0/SUCCESS)
  Process: 2845 ExecStart=/etc/init.d/domoticz.sh start (code=exited, status=0/SUCCESS)
    Tasks: 0 (limit: 4915)
   CGroup: /system.slice/domoticz.service
avril 26 20:22:29 ds718 systemd[1]: Starting LSB: Home Automation System...
avril 26 20:22:29 ds718 domoticz.sh[2845]: 2019-04-26 20:22:29.821  Status: Domoticz V4.9701 (c)2012-2018 GizMoCuz
avril 26 20:22:29 ds718 domoticz.sh[2845]: 2019-04-26 20:22:29.823  Status: Build Hash: b47a877f, Date: 2018-06-23 16:27:56
avril 26 20:22:29 ds718 domoticz.sh[2845]: 2019-04-26 20:22:29.824  Status: Startup Path: /home/projetsdiy/domoticz/
avril 26 20:22:29 ds718 domoticz.sh[2845]: domoticz: Domoticz is starting up....
avril 26 20:22:29 ds718 domoticz[2850]: Domoticz is starting up....
avril 26 20:22:29 ds718 domoticz[2851]: Domoticz running...
avril 26 20:22:29 ds718 systemd[1]: Started LSB: Home Automation System.

Install Python Plugin Manager

I will not repeat all the installation steps in this tutorial. If you need more information about Python Plugin Manager, read this more detailed tutorial.

Python 3.5 (or higher) is already installed on the Debian Buster distribution. However, 2 bookstores are missing

sudo apt install libpython3.5 python3-dev

After installing the libraries, relaunch Domoticz

sudo systemctl restart domoticz.service

Check that the Python Library is correctly loaded when starting Domoticz

CorrectNot correct
domoticz plugin system ok debian synologypython plugin manager failed domoticz debian synology

Grant access permissions to the plugins folder

If you have not installed Domoticz with the root account (which is better for security), you will probably not have the right to access the plugins folder. Run this command, replacing the user name to give full access to this folder.

sudo chown -R USER_NAME domoticz / plugins /

Install the Python Plugin Manager plugin

The Python Plugin Manager plugin automatically installs and updates Python plugins for Domoticz. Go to the plugins directory

cd /domoticz/plugins

and clone the plugin from Github

git clone https://github.com/ycahome/pp-manager.git

Relaunch Domoticz

sudo systemctl restart domoticz.service

You can now easily install other plugins. Do not forget to relaunch the Domoticz service after adding a new plugin so that it appears in the list.

Assessment of the operation of Domoticz on a virtual machine

Creating the virtual machine may seem long and tedious but as soon as you do it the first time, it’s really super simple. The huge advantage is to be on a perfectly standard Linux. So there will be absolutely no problem installing additional libraries. Most of the tutorials adapted to the Raspberry Pi are most often valid. Finally big advantage, we can schedule regular backups.

Small note in passing, unlike QNAP, USB controllers are not disconnected during backup on Synology NAS. No risk of losing control of your Z-Wave accessories in case of absence!

On the performance side, you will not see the different. However, a VM will be slower to start (re-start) than a Docker container. Finally, a VM will consume more resources from the NAS, especially RAM.

FOR:

Standard installation in a Linux environment All home automation controllers (Z-Wave, Zigbee, RFLink …) are detected by the NAS and accessible from the virtual machine Automatic start of Domoticz with the NAS Programmable backup No disconnection of USB devices during backup (unlike QNAP)

AGAINST:

Quite long creation of the virtual machine Quite long installation of Domoticz (compared to Docker) More resources consumed (2% of CPU, RAM) Longer restart

Conclusions: Docker or VM for Domoticz?

If you are not using python plugins and / or Z-Wave+ accessories, you can consider installing Domoticz in a Docker container. The installation is ultra-simple and quick. Getting started is really quick. The Domoticz container consumes virtually no resources from the NAS.

On the other hand, go your way if you use the NAS as a concentrator of home automation gateways. Domoticz under Docker does not support re-docking of the NAS. You may have to re-configure your Z-Wave + accessories which is not tolerable for a home automation server to which we will want to entrust security tasks. Presence simulator, presence detection, triggering of scenarios in the event of an intrusion, weather event (automatic shutter closing) … In this case, I advise you to opt for a more traditional installation on a virtual machine. It is a little longer and consumes resources, but it is also the most reliable solution.

Which NAS model from Synology to choose?

Several consumer models may be suitable. Preferably choose a double-bay model allowing you to create a RAID 1 or Btrfs (more modern) volume in order to secure your data.

Best chose
ModelDS218+DS718+DS918+
nas synology DS218 plusnas synology ds718 plusnas synology ds918 plus
Price NAS only**~ 260$~ 455€~ 550€
ProcessorIntel Celeron J3355

Dual Core@2.0 GHz

Intel Celeron J3455

Quad Core@2.3 GHz

Intel Celeron J3455

Quad Core@2.3 GHz

CPU Benchmark119321262126
RAM2 GB DDR3L2 GB DDR3L4 GB DDR3L
RAM max6 GB  (2 GB + 4 GB)

possible 8GB

6 GB (2 GB + 4 GB)

possible 8GB

8 GB (2 x 4 GB )
Max. VM*224
Max. storgae28 TO

2 x 14 TO

28 TO

2 x 14 TO

56 TO

4 x 14 TO

Transcodage***H.264 (AVC), H.265 (HEVC), MPEG-2 et VC-1 ; max. resolution: 4K (4096 x 2160)@30i/sH.264 (AVC), H.265 (HEVC), MPEG-2 et VC-1 ; max resolution: 4K (4096 x 2160)@30i/sH.264 (AVC), H.265 (HEVC), MPEG-2 et VC-1 ; max. resolution: 4K (4096 x 2160)@30i/s
USB 2.0x2
USB 3.0x1x3x2
Ethernet 1GbEx1x2x2
eSATAx1x1x1
Nose19.3 dB(A)18.4 dB(A)19.8 dB(A)
Consumption17,23W20,1 W28,8 W
Standby cons.5,4 W9,1 W12,6 W
SpecificationsReadReadRead

(*) requires at least 4GB of RAM.

(**) The NAS is delivered without hard drive and memory extension.

(***) Reduces the storage space (and therefore the overall cost of the NAS) for video surveillance

 
Click to rate this post!
[Total: 0 Average: 0]

Are you having a problem with this topic?

Maybe someone has already found the solution, visit the forum before asking your question
Ask your question

Share on facebook
Share on twitter
Share on linkedin
Share on pinterest
Share on email
Share on whatsapp

Did you like this project ? Don't miss any more projects by subscribing to our weekly newsletter!

We will be happy to hear your thoughts

      Leave a Reply

      DIY Projects