Uno de las mejores prácticas que debes de tener en cuenta a la hora de trabajar con Docker es la generación de imágenes que son las que se van a correr para que funcione nuestros contenedores.
A continuación voy a dar una serie de recomendaciones para que el rendimiento sea dispare. 🔥
1. Uso de imágenes Alpine>
La gran mayoría de las imágenes mas populares como lo son Node, Nginx, Apache, etc. tienen una versión minimalista que tiene los elementos indispensables para que funcionen estas herramientas, las versiones Alpine son inspiradas en una de las imágenes mas livianas de todo Docker Hub como lo es Alpine un sistema operativo extremadamente ligero.
2. Copiar dentro del contenedor lo indispensable
Muchas veces solo nos limitamos a copiar todo el contenido de nuestro proyecto sin tomar en cuenta si las carpetas que estamos copiando realmente son importantes o solo agregan volumen a nuestra imagen. Que nos lleva al siguiente punto.
3. Uso adecuado de .dockerignore
Este archivo tiene un funcionamiento realmente parecido al de .gitignore de Git pero en el caso de Docker, este archivo tiene como principal funcionamiento el de saber que archivos no se deben de copiar dentro del contenedor. No debemos de subestimar esta parte porque al no configurar bien este archivo lo que podemos estar haciendo es copiar archivos que no son necesarios y los va a tomar en cuenta en el contexto al momento de crear una imagen. Lo mas recomendable es agregar al menos los siguientes:
- .git
- .vscode
- .aws
- .gitignore
- .dockerignore
- *.log
- *.sql
- Dockerfile - docker-compose.yml
- *.md
- Carpetas que contengan las dependencias del framework que este utilizando, por ejemplo la carpeta vendor para Composer de PHP y la carpeta node_modules para NodeJS de JavaScript
- Carpetas donde se guardan archivos que se han cargado al sistema. Acá es donde debes de ponerte meticuloso porque podría decir que este archivo impacta alrededor de un 80% en tu rendimiento, menos es mas.
Si este articulo te gusto o aprendiste algo nuevo te agradecería que me siguieras y compartieras para que mas personas aprendieran de esto. Gracias.
Top comments (0)