A partir de que esté utilizando Rancher, la forma más fácil sería registrar el Catálogo Rancher personalizado y crear un elemento para cada pila / servicio que desee implementar.
Rancher Catalog es un repositorio Git con la siguiente estructura
Luego, en Jenkins, puede crear un trabajo que llame a la API REST de Rancher para implementar / actualizar la pila / servicio.
A su vez, Rancher extraería la última versión de la imagen de Docker para este servicio y la desplegaría correspondiente al archivo Docker Compose del catálogo.
Pros:
- enfoque genérico que podría usarse para casi todas las aplicaciones
- El propio Jenkins podría implementarse en el entorno Rancher, los agentes podrían crearse en el clúster de Kubernetes
Contras:
- el equipo de desarrollo debe seguir una estrategia de lanzamiento sólida para poder usar compilaciones genéricas
- los controladores de almacenamiento todavía están bajo la pregunta en la versión alfa de Rancher 2.0