Aparentemente no debería de haber problemas con instalar Docker en Slackware desde los SlackBuilds pero hay un detalle que no está bien documentado en los READMEs de los scripts, o al menos no de manera explícita1.

Tengo una instalación limpia de Slackware. Tengo todos los paquetes que trae de manera predeterminada la distro pero más allá de eso no he instalado paquetes de repositorios de terceros como los SlackBuilds u otros2.

Al momento de instalar Docker, usando sbotools

sboinstall docker

obtengo el siguiente error:

go build: when using gccgo toolchain, please pass compiler flags using -gccgoflags, not -gcflags
go build: when using gccgo toolchain, please pass linker flags using -gccgoflags, not -ldflags
go build golang.org/x/net/http/httpguts: no Go files in /usr/src/golang.org/x/net/http/httpguts
go build golang.org/x/net/http2/hpack: no Go files in /usr/src/golang.org/x/net/http2/hpack
go build golang.org/x/net/idna: no Go files in /usr/src/golang.org/x/net/idna
make: *** [Makefile:193: bin/ctr] Error 1

Sucede que una de las dependencias para compilar Docker en Slackware Linux es tener golang que no viene en los paquetes de la distro pero que podemos encontrar en los SlackBuilds como google-go-lang. Lo que no está en el README ni de docker ni de google-go-lang es que luego de instalar google-go-lang tienes que cerrar la sesión de root y volver a ingresar para continuar instalando docker. Luego de esto podremos continuar con la instalación de docker, docker-cli y docker-compose sin problemas.

sboinstall docker docker-cli docker-compose

Finalmente, crea el grupo docker, añade tu usuario a este grupo y vuelve a iniciar sesión con tu usuario para usar docker.

groupadd -r -g 281 docker
usermod -a -G docker <your_username>
reboot

Referencias

  1. Se indica que las herramientas de golang se agregan al path añadiendo unos scripts dentro directorio /etc/profile.d lo cual luego estarían disponibles en /etc/profile para que puedan ser usadas por los usuarios desde sus respectivos shells. Lo que no se indica explícitamente es justamente que para tener los cambios de /etc/profile tenemos que cerrar sesión y volver a iniciarla.

  2. La otra forma de tener Docker sin tener que instalar dependencias que trae SlackBuilds para compilar Docker es ir al repo de AlienBOB y descargar los paquetes listos para instalar, eso sí, tienes que instalar las dependencias que también estań en su repo y que en comparación de las dependencias de SlackBuild son menos.