Posted by q3it on viernes, diciembre 17, 2021 in Micro-servicios
Conceptos fundamentales de Docker
Las imágenes son un componente fundamental de Docker y sin ellas los contenedores no tendrían sentido. Estas imágenes son fundamentalmente plantillas o templates.
Algo que debemos tener en cuenta es que las imágenes no van a cambiar, es decir, una vez este realizada no la podremos cambiar.
Ver imágenes descargadas en el host
docker image ls
Descargar imágenes en el host imágenes descargadas en el host
docker pull <nombre de la imagen>
Ej: docker pull redis
Ej: docker pull ubuntu:18.04 descargando una versión en particular.
Eliminar imágenes descargadas en el host
docker image ls // para obtener el id de la imagen
REPOSITORY TAG IMAGE ID CREATED SIZE
ubuntu 18.04 lastest 93fd78260bd1 8 days ago 86.2MB
docker rmi -f 93fd78260bd1
-f => forzar
Ej: docker rmi -f 93fd78260bd1
Ahora si vamos a crear nuestras propias imágenes, necesitamos un archivo llamado DockerFile que es la ““receta”” que utiliza Docker para crear imágenes.
Es importante que el DockerFile siempre empiece con un ““FROM”” sino, no va a funcionar.
El flujo para construir en Docker siempre es así:
Dockerfile – **build **–> Imágen – run --> Contenedor
Crear nuestras imágenes
- Crear el archivo Dockerfile (receta).
- El dockerfile siempre debe empezar con el FROM, le indicamos cual va a ser nuestra imagen base para empezar.
- RUN para correr un comando.
- Creamos un archivo touch /usr/src/hola-mundo.
- Construimos el dockerfile.
- docker build -t <imagen>:<tag de la imagen> <path de donde vamos a obtener el contexto build, para este caso .>
-t es el nombre del tag de la imagen
Ej: FROM ubuntu
RUN touch /usr/src/hola-mundo
docker build -t ubuntu:box
Hacer push a un contenedor
docker push <tag contenedor>
Ej: docker push <user>/ubuntu:box
Cambiar el tag de un contenedor
docker tag <tag contenedor> <nuevo tag contenedor>
Ej: docker tag ubuntu:box <user>/ubuntu:box