LinuxParty
Cómo crear una imagen Docker personalizada con Dockerfile paso a paso
Aprende a construir, configurar y ejecutar tus propias imágenes Docker mediante un archivo Dockerfile, utilizando como ejemplo un servidor web Nginx personalizado
Docker permite ejecutar aplicaciones dentro de contenedores aislados, ligeros y reproducibles. Aunque podemos descargar imágenes preparadas desde Docker Hub, tarde o temprano necesitaremos crear una imagen adaptada a nuestro proyecto.
Para automatizar este proceso se utiliza un archivo llamado Dockerfile. En él indicamos la imagen de partida, los paquetes necesarios, los archivos que deben copiarse, las variables de entorno, los puertos utilizados y el comando que se ejecutará al iniciar el contenedor.
Gracias a este archivo podemos reconstruir la misma imagen tantas veces como necesitemos, utilizarla en diferentes servidores y mantener su configuración dentro de un repositorio Git.
¿Qué es un Dockerfile?
Un Dockerfile es un documento de texto que contiene una serie de instrucciones ordenadas. Docker interpreta estas instrucciones para construir una imagen.
Según la documentación oficial de Docker, cada instrucción genera o configura una parte de la imagen. El resultado final es una plantilla inmutable desde la que podemos iniciar uno o varios contenedores.
Conviene distinguir estos tres conceptos:
- El Dockerfile contiene las instrucciones de construcción.
- La imagen contiene el sistema de archivos y la configuración resultantes.
- El contenedor es una instancia en ejecución de esa imagen.
Podemos construir una sola imagen y utilizarla para iniciar numerosos contenedores independientes.
Instrucciones principales de un Dockerfile
Las instrucciones se escriben normalmente en mayúsculas para distinguirlas fácilmente de sus argumentos.
Las más utilizadas son:
FROM: selecciona la imagen base.RUN: ejecuta órdenes durante la construcción.COPY: copia archivos desde el contexto de construcción.ADD: añade archivos y admite algunas funciones adicionales.WORKDIR: establece el directorio de trabajo.ENV: define variables de entorno permanentes.ARG: declara variables disponibles durante la construcción.EXPOSE: documenta el puerto utilizado por la aplicación.USER: selecciona el usuario que ejecutará las órdenes posteriores.CMD: establece la orden predeterminada del contenedor.ENTRYPOINT: define el ejecutable principal.LABEL: añade metadatos a la imagen.HEALTHCHECK: comprueba si la aplicación continúa funcionando.
Un Dockerfile debe comenzar normalmente con FROM, aunque antes pueden aparecer directivas del analizador, comentarios o determinados argumentos globales.
Montar una plataforma de edición colaborativa de documentos en Linux es hoy muchísimo más sencillo que hace unos años. Gracias a Docker, es posible desplegar una instancia completa de ONLYOFFICE Docs en apenas unos minutos y dejarla preparada para integrarse con plataformas como Nextcloud, ownCloud o incluso desarrollos propios.
En esta guía veremos cómo instalar ONLYOFFICE Docs utilizando Docker, de forma práctica y orientada a administradores Linux.
¿Qué vamos a instalar?
ONLYOFFICE Docs es el componente encargado de editar documentos online:
- documentos de texto
- hojas de cálculo
- presentaciones
- colaboración en tiempo real
- comentarios y control de cambios
La instalación mediante Docker evita tener que instalar manualmente decenas de dependencias.
Requisitos previos
Antes de comenzar necesitaremos:
- Un servidor Linux actualizado
- Docker instalado
- Docker Compose (recomendado)
- Al menos 4 GB de RAM
- Acceso root o sudo
- Un dominio o subdominio si se va a publicar online
Instalar Docker en Linux
En distribuciones basadas en Debian o Ubuntu:
sudo apt update sudo apt install docker.io docker-compose -y
En esta serie de artículos, analizaremos Docker , que es una herramienta de virtualización liviana de código abierto que se ejecuta en el nivel superior del sistema operativo, lo que permite a los usuarios crear, ejecutar e implementar aplicaciones, encapsuladas en contenedores pequeños.
Se ha demostrado que este tipo de contenedores Linux son rápidos, portátiles y seguros. Los procesos que se ejecutan en un contenedor Docker siempre están aislados del host principal, lo que evita la manipulación externa.
Este tutorial proporciona un punto de partida sobre cómo instalar Docker, crear y ejecutar contenedores Docker en CentOS/RHEL 8/7 , pero apenas roza la superficie de Docker.
Paso 1: Instalar y configurar Docker
1. Las versiones anteriores de Docker se llamaban docker o docker-engine ; si las tiene instaladas, debe desinstalarlas antes de instalar una versión más nueva de docker-ce .
# yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
2. Para instalar la última versión de Docker Engine, debe configurar el repositorio de Docker e instalar el paquete yum-utils para habilitar el repositorio estable de Docker en el sistema.
# yum install -y yum-utils
# yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
Docker es una herramienta popular para crear, implementar y administrar aplicaciones en contenedores, pero administrar contenedores, imágenes y configuraciones puede volverse complejo con el tiempo.
Aquí encontrará una guía detallada de algunas herramientas esenciales de Docker que simplifican su trabajo, ya sea que sea principiante o experimentado. Estas herramientas lo ayudan a monitorear, solucionar problemas y administrar Docker de manera más eficaz.
1. LazyDocker: gestión de Docker desde la línea de comandos
LazyDocker es una herramienta de terminal fácil de usar para administrar contenedores, imágenes y volúmenes de Docker. Está diseñada para personas que prefieren trabajar directamente en la línea de comandos pero desean una interfaz intuitiva.
LazyDocker le permite ver el estado de los contenedores, el uso de recursos, los registros y otros detalles, todo en un solo lugar. Puede iniciar, detener o reiniciar contenedores fácilmente con solo pulsar una tecla.
Después de instalar LazyDocker , escribe lazydockeren la terminal. Verás una pantalla interactiva de todos los contenedores en ejecución y las opciones para administrarlos.

LazyDocker: gestión de Docker desde la línea de comandos
Uno de los desafíos a los que se enfrentaron los desarrolladores en el pasado es lograr que las aplicaciones se ejecuten de manera confiable en múltiples entornos informáticos. A menudo, las aplicaciones no se ejecutaban como se esperaba o encontraban errores y fallaban por completo. Y ahí nació el concepto de contenedores.
¿Qué son las imágenes de contenedores?
Las imágenes de contenedor son archivos estáticos que se envían con un código ejecutable que se ejecuta en un entorno aislado. Una imagen de contenedor comprende bibliotecas del sistema, dependencias y otras configuraciones de plataforma que necesita la aplicación para ejecutarse en diversos entornos.
Red Hat Linux proporciona un conjunto de útiles herramientas de contenedor que puede aprovechar para trabajar directamente con contenedores de Linux utilizando los comandos de docker requeridos. Éstos incluyen:
- Podman : este es un motor de contenedor sin daemon para ejecutar y administrar contenedores OCI en modo raíz o sin raíz. Podman es similar a Docker y tiene las mismas opciones de comando, excepto que Docker es un demonio. Puede extraer, ejecutar y administrar imágenes de contenedores con podman de la misma manera que lo haría con Docker. Podman viene con muchas funciones avanzadas, se integra completamente con los sistemas y ofrece soporte de espacio de nombres de usuario que incluye la ejecución de contenedores sin la necesidad de un usuario raíz.
- Skopeo : esta es una herramienta de línea de comandos utilizada para copiar imágenes de contenedores de un registro a otro. Puede usar Skopeo para copiar imágenes hacia y desde un host en particular, así como copiar imágenes a otro registro o entorno de contenedor. Además de copiar imágenes, puede usarlo para inspeccionar imágenes de varios registros y usar firmas para crear y verificar imágenes.
- Buildah : este es un conjunto de herramientas de línea de comandos que se utilizan para crear y administrar imágenes OCI de contenedores utilizando archivos Docker.
En este artículo, nos centraremos en la gestión de contenedores mediante podman y Skopeo.
Distrobox es una herramienta ingeniosa que le permite crear y administrar contenedores en su distribución de Linux favorita utilizando Docker o Podman . El contenedor lanzado se vuelve altamente integrado con el sistema host y esto permite compartir el directorio HOME del usuario junto con almacenamiento externo, dispositivos USB y aplicaciones gráficas.
Distrobox se basa en una imagen OCI e implementa conceptos similares a los de ToolBox , que se basa en las tecnologías de contenedor estándar OCI y podman.
En esta guía, demostraremos cómo instalar DistroBox para ejecutar cualquier distribución de Linux dentro de su terminal Linux. Para esta guía, estamos ejecutando Fedora 34 .
requisitos previos
Antes de continuar, asegúrese de tener lo siguiente:
- Versión mínima de podman: 2.1.0 o versión de docker: 18.06.1.
Paso 1: Instale DistroBox en el sistema Linux
Instalar DistroBox es pan comido. Simplemente ejecute el siguiente comando curl que descarga y ejecuta el script de instalación.
$ curl https://raw.githubusercontent.com/89luca89/distrobox/main/install | sudo sh


Este artículo arroja algo de luz sobre por qué la virtualización tradicional está perdiendo su brillo y Docker es tan popular hoy en día.
La virtualización se refiere al proceso de creación de un entorno virtual para que se utilicen recursos mínimos para un mejor control de los sistemas. La principal infraestructura necesaria para la virtualización incluye hardware, sistemas operativos, dispositivos de almacenamiento y un entorno de red. Para construir un sistema virtual, la tecnología de virtualización emplea el uso de software que imita las capacidades del hardware. Un solo servidor puede ejecutar varios sistemas operativos, muchos sistemas virtuales y numerosas aplicaciones. Mayor eficiencia y mínimos recursos son las principales ventajas de la virtualización.

Figura 1: Docker puede crear, compartir y ejecutar aplicaciones en cualquier lugar
Podría decirse que Docker es una de las herramientas de DevOps más apreciadas que agilizan el desarrollo, la implementación y el envío de aplicaciones dentro de contenedores.
El concepto de contenedorización implica aprovechar las imágenes de contenedores. Estos son paquetes ejecutables pequeños, livianos e independientes que incluyen todo lo que se necesita para ejecutar una aplicación, incluido el código fuente, las bibliotecas y las dependencias, y los archivos de configuración.
Al hacerlo, la aplicación puede ejecutarse en casi cualquier entorno informático; infraestructura de TI tradicional, nube y una gran variedad de versiones de Linux/UNIX.
El monitoreo de contenedores ayuda a los equipos de operaciones a identificar problemas subyacentes y resolverlos de manera oportuna. El monitoreo de contenedores abarca la captura de métricas básicas como el uso de la CPU , la utilización de la memoria , el tamaño del contenedor y la utilización del ancho de banda, por mencionar algunos. Además, puede recopilar registros en tiempo real que son útiles para depurar y alertar al equipo de TI sobre cuándo escalar.
Zabbix es una popular herramienta de monitoreo de infraestructura de TI que vigila casi todos los elementos de su entorno, incluidos los dispositivos físicos, como servidores y dispositivos de red, como enrutadores y conmutadores. También puede monitorear aplicaciones, servicios y bases de datos.
En esta guía, le mostraremos cómo puede monitorear contenedores Docker usando la herramienta de monitoreo Zabbix en Linux.
Hoy en día, Docker, [ 2 ] se ha convertido en el estándar de facto en el uso de contenedores de software. En este artículo vamos a ver cómo podemos instalarlo en Windows 10, concretamente la versión Docker CE (Community Edition).
"Pero ¿no decían que Docker solo funcionaba en Linux?". Bueno, si revisamos los orígenes de Docker es cierto, se inició como proyecto bajo Kernel Linux, pero ahora ya no. Microsoft no quería quedarse fuera de esta tecnología y llega a un acuerdo con Docker en 2015 para convertirse en partner oficial y de esta forma, incorporar esta tecnología a sus sistemas operativos Windows Server 2016 y Windows 10 (aunque no en todas las versiones está soportado).
Realmente, no es nada nuevo usar Docker en Windows. De hecho, podemos hacer funcionar Docker en Windows 7 y Windows 8 usando VirtualBox, la novedad ahora es que podemos usar Docker de forma nativa en Windows 10 sin necesidad de otras herramientas como Docker ToolBox.
Captura de presentación Docker y sistemas soportados
Kubernetes es un sistema de código libre para la automatización del despliegue, ajuste de escala y manejo de aplicaciones en contenedores que fue originalmente diseñado por Google y donado a la Cloud Native Computing Foundation. Soporta diferentes entornos para la ejecución de contenedores, incluido Docker.
Para Stefanie Chiras, vicepresidenta y directora ejecutiva de la unidad de negocios Red Hat Enterprise Linux (RHEL) en Red Hat , aspectos como la seguridad y la resistencia siempre han sido importantes para Red Hat. Más aún, en la situación actual, cuando todos se han vuelto completamente remotos y es mucho más difícil lograr que las personas se pongan al frente del hardware para llevar a cabo actualizaciones, parches, etc.
"A medida que observamos nuestra situación actual, nunca ha sido más importante tener un sistema operativo que sea resistente y seguro, y estamos enfocados en eso", dijo.
La versión recientemente lanzada de Red Hat Enterprise Linux (RHEL) 8.2 aborda inadvertidamente estos desafíos, ya que facilita a los líderes de tecnología adoptar rápidamente las últimas innovaciones listas para producción que ofrecen seguridad y resistencia que necesitan sus equipos de TI.
-
Docker
- Cómo crear una imagen Docker personalizada con Dockerfile paso a paso
- Cómo instalar ONLYOFFICE Docs con Docker en Linux paso a paso
- Instalar Docker y aprender a manipular contenedores básicos en CentOS y RHEL
- 11 herramientas Docker imprescindibles para simplificar tu flujo de trabajo
- Cómo administrar contenedores usando Podman y Skopeo en RHEL 8
- DistroBox: ejecute cualquier distribución de Linux dentro de la terminal de Linux
- Docker: la plataforma para la virtualización de nueva generación
- Cómo monitorear contenedores Docker con la herramienta de monitoreo Zabbix
- Instalar Docker en Windows 10 y 11
- Linux y Kubernetes: Al servicio de los objetivos comunes de las empresas
- Mirantis adquiere Docker Enterprise
- Configurar Jenkins en Docker




