|
|
Line 1: |
Line 1: |
− | ==Introduction==
| + | #REDIRECT [[https://wiki.servarr.com/en/docker-arm-synology]] |
− | Synology only offer a docker package on their <code>x64</code> based NAS. Using this method to install docker on an <code>aarch64</code> NAS is totally unsupported/untested and totally at your own risk. It is entirely possible it will destroy your NAS.
| |
− | | |
− | ==Summary==
| |
− | | |
− | The instructions below will:
| |
− | # Place the docker binaries in <code>/usr/local/bin/</code> | |
− | # Create a docker config file <code>/usr/local/etc/docker/docker.json</code>
| |
− | # Configure docker to save its data to <code>/volume1/docker/var</code>
| |
− | # Create a script to start docker on boot at <code>/usr/local/etc/rc.d/docker.sh</code>
| |
− | # Create a <code>docker</code> group
| |
− | # Place a docker-compose script in <code>/usr/local/bin/</code>
| |
− | | |
− | ==Installation==
| |
− | Log in as <code>root</code> to your synology. Execute the following command:
| |
− | | |
− | curl https://gist.githubusercontent.com/ta264/2b7fb6e6466b109b9bf9b0a1d91ebedc/raw/7b11f25c3dce181faa5206aed8051f176cc4e406/get-docker.sh | sh
| |
− | | |
− | If all goes well you should see the message:
| |
− | <pre>Done. Please add your user to the docker group in the Synology GUI and reboot your NAS.</pre>
| |
− | | |
− | Do as it says:
| |
− | # Add your user to the new <code>docker</code> group using the Synology GUI
| |
− | # '''Reboot.'''
| |
− | | |
− | Hopefully you have functioning <code>docker</code> and <code>docker-compose</code> commands, which should work when logged in as your normal user.
| |
− | | |
− | ==Caveats==
| |
− | # It seems most ARM Synology don't support seccomp, so the docker container has unfettered access to your system (even more so than with a regular docker).
| |
− | # Again, due to Synology constraints, all containers need to use <code>--network=host</code> (or <code>network: host</code> in compose) and everything will be directly accessible from the host. There are no port maps.
| |
− | # Obviously you can only run aarch64 images, but most hotio and linuxserver images offer an aarch64 version.
| |
− | | |
− | ==Setting up a docker GUI==
| |
− | If you want a GUI you can run Portainer using the following example compose:
| |
− | | |
− | <pre>
| |
− | version: '2'
| |
− | | |
− | services:
| |
− | portainer:
| |
− | image: portainer/portainer
| |
− | restart: unless-stopped
| |
− | network_mode: host
| |
− | volumes:
| |
− | - /var/run/docker.sock:/var/run/docker.sock
| |
− | - portainer_data:/data
| |
− | | |
− | volumes:
| |
− | portainer_data:
| |
− | </pre>
| |
− | | |
− | Place this in a file called <code>docker-compose.yml</code> in an otherwise empty directory. Run:
| |
− | docker-compose up -d
| |
− | Visit <code>http://ip:9000</code> to complete setup (where <code>ip</code> is the IP address of your synology).
| |
− | | |
− | ==Setting up Sonarr/Radarr/Lidarr/Readarr==
| |
− | For guidance setting up Sonarr/Radarr/Lidarr/Readarr, see the [[Docker Guide]], and '''remember caveat 2 above.'''
| |