Multicompose es una herramienta de línea de comandos (CLI) que permite automatizar la ejecución de múltiples comandos docker-compose de forma secuencial. Es útil para flujos de trabajo que requieren levantar contenedores en un orden específico y ejecutar scripts de inicialización entre los pasos.
Este programa CLI facilita la ejecución de los siguientes pasos de manera automatizada:
- Levantar contenedores usando un archivo
docker-compose.ymlcon el comandodocker-compose up --build -d. - Ejecutar un script de inicialización,
init.sh, que puede contener configuraciones adicionales o pasos de preparación para los contenedores. - Levantar contenedores adicionales con un segundo archivo
docker-compose-post.ymlusandodocker-compose up --build -d.
Para instalar y usar multicompose, sigue estos pasos:
- Go 1.18 o superior.
- Docker y Docker Compose instalados en tu máquina.
Clona el repositorio de multicompose:
git clone https://github.com/tu_usuario/multicompose.git
cd multicomposeConstruye la aplicación usando Go:
go build -o multicompose .Si deseas instalar la herramienta globalmente en tu sistema:
go installEste comando instalará la herramienta en el directorio $GOPATH/bin.
La herramienta multicompose se ejecuta desde la línea de comandos y tiene el siguiente uso básico:
multicompose upEste comando ejecuta el siguiente flujo de trabajo:
- Levanta los contenedores usando
docker-compose.yml:docker-compose up --build -d
- Ejecuta el script de inicialización
init.sh:bash init.sh
- Levanta los contenedores adicionales usando
docker-compose-post.yml:docker-compose -f docker-compose-post.yml up --build -d
Si deseas contribuir al proyecto, puedes hacerlo de las siguientes maneras:
- Informar errores: Si encuentras un bug o tienes alguna sugerencia, abre un issue.
- Realizar cambios: Si tienes una mejora, haz un fork del proyecto, realiza tus cambios y abre un pull request.
Este proyecto está bajo la Licencia MIT - consulta el archivo LICENSE para más detalles.
- Correo electrónico: tu_email@dominio.com
- Repositorio: https://github.com/tu_usuario/multicompose