Desde hace unos cuantos post hablamos de CoreOS, puesto toca cambio de tema debido a que esto nos ayudara en los siguientes post de CoreOS.

Vamos a hablar sobre docker un proyecto nuevo que se le esta dando mucho bombo y platillo y que esta creciendo y yo desde aqui digo que es proyecto de futuro y señores piensen en cambiar a este estilo de virtualizacion ligera.

Que es docker que mejor que la propia definicion del proyecto

What is Docker?
Docker is an open platform for developers and sysadmins to build, ship, and run distributed applications. Consisting of Docker Engine, a portable, lightweight runtime and packaging tool, and Docker Hub, a cloud service for sharing applications and automating workflows, Docker enables apps to be quickly assembled from components and eliminates the friction between development, QA, and production environments. As a result, IT can ship faster and run the same app, unchanged, on laptops, data center VMs, and any cloud.

Primero pasos con docker vamos a instalarlo

Para ello añadimos el repo de docker

deb http://mirror.yandex.ru/mirrors/docker/ docker main\

Hacemos apt-get update y instalamos el paquete con el siguiente comando

apt-get install lxc-docker

Bueno ya tenemos docker instalado ahora nos tenemos que bajar las imagenes base de su repositorio oficial en nuestro caso las imagenes de debian y utilizaremos el tag latest

Disponemos en el repositorio oficial de docker las siguientes imagenes

docker images debian
REPOSITORY          TAG                 IMAGE ID
debian              experimental        fc1e0387821b
debian              rc-buggy            62feefc32dd3
debian              oldstable           735510f8efd1
debian              squeeze             8af7349c190c
debian              6.0.9               8af7349c190c
debian              unstable            e98b6396fbc4
debian              sid                 f6bf3e3780c5
debian              testing             83e556125937
debian              jessie              60d8d9423165
debian              stable              d8309758b8fe
debian              7.4                 b0a528bf0519
debian              latest              b0a528bf0519
debian              wheezy              b0a528bf0519
debian              6.0.8               d56191e18d6b
debian              7.3                 b5fe16f2ccba
 coreos0 tierno # docker pull debian:latest
Pulling repository debian
667250f9a437: Pulling metadata 
511136ea3c5a: Download complete 
af6bdc397692: Download complete 

Como veis se ha descargado la imagen base podemos comprobarlo haciendo

coreos0 tierno # docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             VIRTUAL SIZE
debian              latest              667250f9a437        6 days ago          115 MB

Hay se muestran la imagenes que podemos utilizar

Lo siguiente que haremos es levantar los contenedores pues podemos levantar el contenedor de la siguiente manera

coreos0 tierno # docker run -i -t debian:latest /bin/bash
root@42dbff24bad3:/#

Como veis depues de ejecutar el comando nos ha cambiado el promp esto es por que estamos dentro del contenedor corriendo una shell bash de forma interactiva

Si abrimos otra terminal podemos ver como esta corriendo el contenedor

coreos0 tierno # docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
42dbff24bad3        debian:latest       /bin/bash           3 minutes ago       Up 3 minutes                            elegant_fermat      

Hay se ve que esta corriendo y con que id ejecutando el docker ps

Ahora cerramos el contenedor

Si lanzamos el siguiente comando vemos que ya no esta el contenedor

coreos0 tierno # docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES

Pero si lanzamos el comando con el siguiente modificador ahora si nos aparece

coreos0 tierno # docker ps -a
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS                     PORTS               NAMES
42dbff24bad3        debian:latest       /bin/bash           4 minutes ago       Exited (0) 4 seconds ago                       elegant_fermat      

Si queremos descartar los cambios del contenedor por que no nos interesan lo haremos de la siguiente manera.

coreos0 tierno # docker rm 42dbff24bad3
42dbff24bad3
coreos0 tierno # docker ps -a
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
coreos0 tierno # 

Pues hasta aqui el manejo basico de docker, segun avance con coreOs veremos cosas mas complicadas que se pueden hacer.

Espero que os resulte interesante

Os dejo el enlace oficial

docker.io

Deja un comentario