dind-swarm-worker
dind-swarm-worker
Aplicación Docker from Josh.5's Repository
Visión general
Configure Unraid as a Docker Swarm worker using Docker-in-Docker.
This container runs a dedicated Docker Engine inside Unraid, allowing you to join a Swarm without modifying the host Docker daemon.
Prerequisites (Unraid + macvlan):
- In Unraid, open Settings - Docker.
- Stop Docker, then set "Docker custom network type" to macvlan.
- Enable a custom network on eth0 (e.g., "br0" or "eth0" depending on your setup).
- Assign a fixed IP in the Unraid Docker template (matches the MyIP field). This IP must be
free on your LAN and outside your DHCP pool. - Start Docker again.
Template configuration notes:
- Privileged: recommended for best compatibility with nested containers and features like
overlay networking. Not strictly required, but some inner containers may fail without it. - Hostname and /etc/hosts: update ExtraParams to set a meaningful hostname and host entry:
--hostname='Tower' --add-host='Tower:127.0.0.1'
Replace "Tower" with your Unraid server name or desired node name. - ExtraParams: you can remove --gpus=1 if you do not want GPU access, or set it to a
specific GPU UUID.
After container start (joining the Swarm):
- On your Swarm manager node, generate a worker join token:
docker swarm join-token worker - Copy the join command that it outputs. It looks like:
docker swarm join --token TOKEN MANAGER_IP:2377 - Enter the container console (or use docker exec) and run the join command inside this
container. - Verify on the manager:
docker node ls
You should see this node listed as a worker.
Optional:
- If you want the inner Docker daemon to persist data, ensure the /var/lib/docker path maps
to a stable storage path as configured in the template. - For TLS client certs or custom daemon config, use the mapped /certs and /etc/docker paths.
- You can set the default runtime by writing /etc/docker/daemon.json in the bound config path
(Path: Docker config). Example:
{
"runtimes": {
"nvidia": {
"args": [],
"path": "nvidia-container-runtime"
}
}
}
Argumentos en tiempo de ejecución
- Red
eth0- Concha
bash- Privilegiado
- true
- Parámetros adicionales
--gpus=1 --hostname='Tower' --add-host='Tower:127.0.0.1'
Configuración de plantillas
Path: CertificatePathrw
- Objetivo
- /certs
- Por defecto
- /mnt/user/system/dind-swarm-worker/certs
- Valor
- /mnt/user/system/dind-swarm-worker/certs
Path: Docker storagePathrw
- Objetivo
- /var/lib/docker
- Por defecto
- /mnt/user/system/dind-swarm-worker/var/
- Valor
- /var/lib/docker/dind-var/dind-swarm-worker
Path: Docker configPathrw
- Objetivo
- /etc/docker
- Por defecto
- /mnt/user/system/dind-swarm-worker/etc
- Valor
- /mnt/user/system/dind-swarm-worker/etc
Force Insecure TCPVariable
Expose tcp://0.0.0.0:2375 even when TLS is enabled on 2376.
- Objetivo
- DOCKER_FORCE_INSECURE_TCP
- Por defecto
- false
- Valor
- false
Path: /mntPathrw
Provides direct access to the mounted disks
- Objetivo
- /mnt
- Valor
- /mnt
TimezoneVariable
Container timezone.
- Objetivo
- TZ
- Por defecto
- Etc/UTC
- Valor
- Etc/UTC
Nvidia GPU UUIDVariable
For users with multiple GPUs, add the ID found under the
- Objetivo
- NVIDIA_VISIBLE_DEVICES
- Por defecto
- all
- Valor
- all
Driver CapabilitiesVariable
- Objetivo
- NVIDIA_DRIVER_CAPABILITIES
- Por defecto
- all
- Valor
- all
Categorías
Detalles
Repositorio
ghcr.io/josh5/ubuntu-dind:latestÚltima actualización2026-05-31
Visto por primera vez2026-01-21
Ejecute dind-swarm-worker en Unraid.
dind-swarm-worker se encuentra en Community Apps para Unraid OS. Explore Unraid para crear un servidor doméstico flexible, un NAS o un laboratorio doméstico.