= trabajando con contenedores * ''docker info'' * ''docker ps'' * ''-a'' muestra todos los contenedores * ''docker run hello-world'' * ''docker search debian'' * ''docker pull debian'' : si no se especifica, se descarga la **latest**, que además es la que se va actualizando * este comando descarga o actualiza la imagen * ''docker pull debian:'' : diferentes versiones * ''docker run %%%%'' * ''-it'': interactive, tty {{ :info:cursos:altran:pasted:20180703-093208.png }} * ''docker stop '' * ''docker exec -it bash'' : nos enganchamos a un contenedor en funcionamiento * //bash// o //sh// serían válidos siempre que estén instalados. * suelen poner //sh// que es más ligero * si ejecutamos ''docker run -it'', al salir el contenedor se para. Si lo hacemos con el EXEC no pasa * ''docker rm '' * no se pueden borrar contenedores en ejecución * ''docker rm $(docker ps -aq)'' * elimina todos los contenedores * ''docker commit [REPOSITORY[:TAG]]'': crea imagen de contenedor * ''docker images'': lista las imágenes en el sistema * descarga por capas de una aplicación: $ docker run nginx Unable to find image 'nginx:latest' locally latest: Pulling from library/nginx 683abbb4ea60: Pull complete 6ff57cbc007a: Pull complete 162f7aebbf40: Pull complete Digest: sha256:2cf71a9320ea65566c0738e87400407aaffd8dd11a411ceb2f2b585ad513469e Status: Downloaded newer image for nginx:latest * ''docker inspect | grep IPAddress'' : muestra información del contenedor / imagen / loquesea * ''docker run -d nginx'': * ''-d'': detach (el proceso no se queda "colgado" ejecutando el contenedor)... lanzar contenedor en background * ''%%--%%rm'' : al parar el contenedor, elimina el contenedor (para no ir dejando un rastro de conenedores) * ''-p 80:80'': mapea el puerto host:contenedor, en todos los interfaces * ''-p 127.0.0.1:80:80'': el contenedor solo será accesible desde 127.0.0.1 * ''-P'': mapea el puerto en el que está escuchando el contenedor a un puerto aleatorio del equipo