Contenidos
Instalación linux
Para comenzar con la instalación ya que no se encuentra en los repositorios, lo más fácil instalar la llave y aprovecharse de la gestión de paquetes
$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
//añadir el repositorio estable
$ sudo add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable"
//e instalar
$ sudo apt-get update
$ sudo apt-get install docker-ce docker-ce-cli containerd.io
Finalmente comprobar la instalación:
$ sudo docker run hello-world
El proceso llegó a ocuparme unos 300 MB adicionales, obviamente sin contenedores el consumo de recursos de objeción es inapreciable. Para más opciones de versión de instalación ver https://docs.docker.com/engine/install/ubuntu/
Interfaces usuario GUIs
Es posible tanto por línea de comandos como por interfaz desktop, sin embargo, este último solo está disponible para Apple y Windows. Alternativas para linux:
$ docker pull portainer/portainer
$ docker run -d -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock portainer/portainer
$ http://localhost:9000/
//configurar administrador, seleccionar el ambiente y entrar. 1.24.1 versión actual
//en este momento aparece la versión 2.0 Pero: Support for external endpoints has been removed.

$ sudo docker run -d –restart=unless-stopped -p 8000:80 -p 443:443 rancher/rancher

Probando Dockstation.io
Instalando el dockstation….deb son unos 50MB., despues en necesario el docker-compose y crear una cuenta en dockstation.
sudo curl -L "https://github.com/docker/compose/releases/download/1.26.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
Creando contenedores
Ejemplo creando test de Alpine versión latest:
docker create -i -t -v '/home/raul/Docker/test/:/var/www/html' --name testDocker alpine:latest /bin/sh
En este caso para el tipo de máquina alpine que utiliza busybox se debe utilizar en la opción de ejecutable para bash /bin/sh, pero para la familia debian: /bin/bash, sino bota el siguiente error: exec: \”/bin/bash\”: stat /bin/bash: no such file or directory”: unknown
Para tomar ventaja de Docker en la creación de contenedores hacerlo a través de docker-compose, instalar:
$ apt install docker-compose
Y luego luego por medio del fichero de configuración… crear el .yml y desde ese directorio se ejecuta:
$ docker-compose up
$ docker-compose build //forzar el build cuando modificamos después de up.
Comandos útiles
//listar imágenes en la máquina
$ docker images
//contadores
$ docker ps -a
//borrar docker
$ docker rm midocker
//iniciarlo
$ docker start midocker
//entrar:
$ docker attach midocker
//Enumerar:
$ docker images -a
//Eliminar
$ docker rmi Image Image
//Eliminar todos recursos (imágenes, contenedores, volúmenes y redes, no asociados con un contenedor)
$ docker system prune
//Eliminar contenedores detenidos e imágenes no utilizadas (no solo aquellas pendientes)
$ docker system prune -a
$ docker logs midocker //añadir –follow -f para dejar abierto
$ docker rename midocker midocker-old
Ejemplos
Contenedor Nginx:
$ sudo docker run –detach –name web nginx:latest
$ docker-compose exec midocker bash //desde el dir con el .yml
Las flag –interactive y –tty, (-it), crea el input stream (stdin), así como dejar un terminal virtual para el contenedor. (Ctrl+p+q)
0 comentarios