Go (Golang) y Docker: contenedorización de aplicaciones
Go (Golang) y Docker: contenedorización de aplicaciones
Resumen:
Este libro es una guía práctica para la contenedorización de aplicaciones en Go (Golang) utilizando Docker. Está diseñado para desarrolladores que desean dominar el enfoque moderno para empaquetar, entregar y desplegar software.
De qué trata el libro:
- Fundamentos de Docker y su ecosistema: imágenes, contenedores, Dockerfile, docker-compose.
- Especificidad de la contenedorización de aplicaciones Go: compilación en binario estático, creación de imágenes mínimas (scratch, alpine).
- Compilación multi-etapa (multi-stage builds) para reducir el tamaño de las imágenes.
- Trabajo con redes y datos: redes Docker, volumes, bind mounts.
- Orquestación de microservicios en Go con docker-compose.
- Seguridad de contenedores: best practices, ejecución como usuario no privilegiado.
- Integración con CI/CD (GitHub Actions, GitLab CI) para pruebas y despliegue automáticos.
- Monitoreo y registro de aplicaciones contenedorizadas.
Para quién es este libro:
- Desarrolladores Go que deseen automatizar el despliegue de sus aplicaciones.
- Ingenieros DevOps que trabajen con el stack Golang.
- Estudiantes y profesionales que aprendan prácticas modernas de contenedorización.
- Todos aquellos que quieran migrar sus proyectos Go a Docker sin teoría innecesaria.
Qué aprenderá y podrá hacer:
- Escribir Dockerfile eficientes para aplicaciones Go con un tamaño final mínimo.
- Configurar un entorno de desarrollo local con Docker Compose.
- Empaquetar servicios web, utilidades CLI y microservicios en Go en contenedores.
- Gestionar configuración y secretos mediante variables de entorno y Docker secrets.
- Automatizar la compilación y publicación de imágenes en Docker Hub o un registry privado.
- Desplegar aplicaciones Go contenedorizadas en un servidor (VPS, nube) con Docker.
- Aplicar los patrones "una responsabilidad por contenedor" y "sidecar".
- Optimizar el tiempo de compilación y el almacenamiento en caché de capas.
El libro contiene numerosos ejemplos de código listos para usar, instrucciones paso a paso y escenarios reales. Comenzará con los fundamentos de Docker y Go, y al final podrá construir por sí mismo una infraestructura lista para producción para sus proyectos.
Todos los ejemplos están probados en las versiones actuales de Go 1.21+ y Docker 24+. Independientemente de su nivel actual, encontrará aquí prácticas y técnicas útiles que puede aplicar de inmediato en su trabajo.
¡Sumérjase en el mundo de la contenedorización de aplicaciones Go y haga que su proceso de desarrollo y despliegue sea rápido, confiable y reproducible!