Well.. setting up Continous Integration/ Continous Deployment (CI/CD) is a very huge chapter.. Generally you have to automize everything! And it’s hard to break it down to one example, because it really depends on your project setup. You have to write your build scrips (maven, gradle, …), define the runtine environment (Dockerfile), add webhooks for automatic triggering the pipeline, set up a deployment pipeline (Jenkinsfile), archivate your libraries in a repository manager (Nexus), archivate your docker-images in a docker registry, automaticly detect new versions of the running images and deploy them (watchtower), run and monitor the application (Portainer). That’s why we’ll concentrate on the operations view for now. We’re gonna set up Jenkins, Nexus, Docker Registry and Portainer as well[…]


A single node server is perfectly suited for prototyping. It is quick to set up, requires little maintenance and still allows the first rollout of the application. tl;dr If you are tired of reading clone my Github repo und follow the instructions in the main Readme.md as well as in the ./01_server/Readme.md! Renting a server Nowadays it is quite easy to get the appropriate hardware. Thanks to virtualization, cloud providers can deliver the desired resources in seconds. I’ve personally hosted my virtual private server (vps) at Contabo and am very satisfied with its support. I’m paying 5€ per month for an ubuntu server with 4 CPU cores, 8GB of RAM and 200GB of SSD. My domain additionaly is 1€ per[…]