I am having troubles understanding the following DevOps concept.

I have developed a dockerized web app using docker-compose. It is in my local and I can upload it to any cloud service I want and it works fine. The point is that when I try to establish a CI/CD pipeline, specifically CircleCI (I don't know how it works with any other alternative), I found out that I need to use a yml file that specifies a docker image for a given job.

My question is: does this mean that my entire web app will run in this specific image? If so, how can I translate my current working web app that uses docker-compose to a web app that takes advantage of CI/CD?

  • Does you docker-compose have more than one app developed by you or just one and its database for example?
    – JRichardsz
    Oct 10, 2021 at 1:11

1 Answer 1


Yes, you can and you should take advantage of the docker-compose app, see CI and CD are two different things, as you have running stack, so you have one basic version of application and its stack, Now needs to update those whenever you push changes to your app.

We have to push changes to application and build new image, once we have build and push the image to image registry, it cab be local or aws whatever, we have to tell the docker-compose that we have updated the image.

so in CI pipeline you have to add two stages, build and push,

and in CD pipeline, you have to have one deploy stage, and depending upon your server / vm position, you can login to server, and update docker-compose with new image tag, and up it again.

I hope this will give you starting point.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.