HiveBrain v1.2.0
Get Started
← Back to all entries
snippetdockerMinor

Using DevOps pipelines to create distribution bundles of applications

Submitted by: @import:stackexchange-devops··
0
Viewed 0 times
createpipelinesapplicationsusingbundlesdistributiondevops

Problem

We want to create bundles of our applications in order to distribute to clients etc. An application can have more than one component. Ex: an application can have a spring server and a scheduler so in order to distribute this application both jars will have to be given to the client.

We want to use Docker/Docker compose to accomplish this. Ex: we give a client a bundle containing a Docker compose file, and he/she just runs docker-compose up to start the application.

We currently have a Jenkins pipeline that when run will produce a zip file containing .tar files of all the Docker images of the components. There will also be a start.sh (or start.bat) file that, when run, will load all the Docker images and run docker-compose up.

Some of these components have properties that the client needs to configure according to their environment (ex: SCM URL). If the component is Spring/Java based, we would externally mount the application.properties file into the docker image in the docker-compose.yml

This all works, I just want to know if the current process we are using is compliant with industry standards or is there a better way of meeting the requirement? Any open source tools that would simplify the process?

Solution

Add a config file with parameters used in install/run script. You can look at Harbor (Github, install docs) as an example of doing just that (and they have a configuration migrator).

Context

StackExchange DevOps Q#11535, answer score: 2

Revisions (0)

No revisions yet.