Difference between revisions of "Docker ARM Synology"
From Servarr
| Line 77: | Line 77: | ||
docker: Error response from daemon: OCI runtime create failed: container_linux.go:370: starting container process caused: process_linux.go:459: container init caused: open /dev/ptmx: no such file or directory: unknown. | docker: Error response from daemon: OCI runtime create failed: container_linux.go:370: starting container process caused: process_linux.go:459: container init caused: open /dev/ptmx: no such file or directory: unknown. | ||
</pre> | </pre> | ||
| + | |||
| + | You can start portainer with: | ||
| + | docker run --network=host -v "/var/run/docker.sock:/var/run/docker.sock" portainer/portainer-ce:linux-arm64 | ||
| + | |||
| + | Which will start portainer on port 9000 on the host. | ||
Revision as of 17:33, 11 December 2020
Log in as root to your synology. Download and extract the docker binaries by running:
curl https://download.docker.com/linux/static/stable/aarch64/docker-20.10.0.tgz | tar -xz -C /usr/local/bin --strip-components=1
Create somewhere for the docker files to live:
mkdir -p /volume1/@Docker/lib mkdir /docker mount -o bind "/volume1/@Docker/lib" /docker
Configure docker:
mkdir -p /usr/local/etc/docker
cat <<EOT > /usr/local/etc/docker/docker.json
{
"storage-driver": "vfs",
"iptables": false,
"bridge": "none",
"data-root": "/docker"
}
EOT
Enable docker to start on boot:
cat <<'EOT' > /usr/local/etc/rc.d/docker.sh
#!/bin/sh
# Start docker daemon
NAME=dockerd
PIDFILE=/var/run/$NAME.pid
DAEMON_ARGS="--config-file=/usr/local/etc/docker/docker.json --pidfile=$PIDFILE"
case "$1" in
start)
echo "Starting docker daemon"
mount -o bind "/volume1/@Docker/lib" /docker
/usr/local/bin/dockerd $DAEMON_ARGS &
;;
stop)
echo "Stopping docker daemon"
kill $(cat $PIDFILE)
;;
*)
echo "Usage: "$1" {start|stop}"
exit 1
esac
exit 0
EOT
chmod 755 /usr/local/etc/rc.d/docker.sh
Create the docker group, replacing MYUSERNAME with the username you use to log in with SSH
synogroup --add docker root MYUSERNAME
Start it!
/usr/local/etc/rc.d/docker.sh start
Reboot.
You can try to install docker compose:
sudo curl -L --fail https://raw.githubusercontent.com/linuxserver/docker-docker-compose/master/run.sh -o /usr/local/bin/docker-compose sudo chmod +x /usr/local/bin/docker-compose
But in our test this failed with
Status: Downloaded newer image for ghcr.io/linuxserver/docker-compose:latest docker: Error response from daemon: OCI runtime create failed: container_linux.go:370: starting container process caused: process_linux.go:459: container init caused: open /dev/ptmx: no such file or directory: unknown.
You can start portainer with:
docker run --network=host -v "/var/run/docker.sock:/var/run/docker.sock" portainer/portainer-ce:linux-arm64
Which will start portainer on port 9000 on the host.