Today I am writing about a continuous delivery pipeline, built on top of GitLab and GitLab CI. As a very simple but production tested deployment solution, I will push to a Dokku cloud.
In short, we will:
- setup GitLab with CI
- secure connections with TLS certificates using LetsEncrypt and Certbot
- setup GitLab Container Registry
- configure a pipeline for staging and production using a Dokku host
- run the pipeline
The first part will cover the configuration part of GitLab, the second will demonstrate one possible deployment configuration to zero-downtime-deploy a microservice application, built with JHipster. But before we dig into the details, I will discuss what this setup is supposed to achieve.