Difference between revisions of "Docker ARM Synology"
From Servarr
Bakerboy448 (talk | contribs) (reformat) |
|||
| Line 1: | Line 1: | ||
| − | + | Log in as `root` to your synology. Execute the following command: | |
| − | |||
| − | + | curl https://gist.githubusercontent.com/ta264/2b7fb6e6466b109b9bf9b0a1d91ebedc/raw/7b11f25c3dce181faa5206aed8051f176cc4e406/get-docker.sh | sh | |
| − | curl https:// | ||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | + | 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 'docker' group using the synology UI | |
| − | + | # '''Reboot.''' | |
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | + | Hopefully you have a functioning `docker` and `docker-compose`, which should work when logged in as your normal user. | |
| − | |||
| − | |||
| − | + | Some 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 `--network=host` (or `network: host` in compose) and everything will be directly accesible 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. | ||
| − | + | If you want a GUI you can use 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> | </pre> | ||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
Revision as of 19:43, 11 December 2020
Log in as `root` 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:
Done. Please add your user to the docker group in the Synology GUI and reboot your NAS.
Do as it says:
- Add your user to the new 'docker' group using the synology UI
- Reboot.
Hopefully you have a functioning `docker` and `docker-compose`, which should work when logged in as your normal user.
Some 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 `--network=host` (or `network: host` in compose) and everything will be directly accesible 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.
If you want a GUI you can use the following example compose:
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: