TESTCONTAINERS
Are you struggling finding the right strategy for your integration tests? Mocking does not cover everything and relying on all external services to be present also gives you a headache. What if there was a way to start the real service in your integration tests?…
REFLECTION IN NATIVE IMAGES
Are you struggling getting the configuration right for reflection in native images? Here are some tips and tricks to get you up and running! Building native images can take a lot of time so trial and error is not the optimal way to get the…
UPX IMAGE
Do you want smaller images with a faster startup time? Use UPX to compress your executable inside your image. Use a UPX image! For more information on the internals of UPX take a look at their website here. Or at the source code of UPX…
JIB MAVEN PLUGIN
Do you need a simple way to build docker images for your java with maven applications? Use the jib maven plugin and let maven do the heavy lifting! For a complete overview of all capabilities of the jib maven plugin take a look at the…
NATIVE IMAGE
Are you looking for a way to build super fast starting images with a low memory footprint? Use GraalVM’s native image and make the difference! To skip the details on when building a native image is possible we will use a framework that advertises with…
FLUENT
Are you sick of going into a Kubernetes cluster to look at the logs of an application? Do you want a clear overview of the access logs over several pods? Use these tools for a fluent log experience. We are going to use fluent-bit, fluentd,…
CONTAINER SECURITY
Are you writing secure Dockerfiles? Are you scanning for security vulnerabilities of the base images you use? Use hadolint and trivy to upgrade your container security! We are going to explore two tools for writing better and more secure images: hadolint (code here on github)…
DEPLOY WITH HELM
Do you ever get lost in all the Kubernetes configuration files you defined for your application? When you deploy with Helm they are treated as packages and are easier to manage. In this post we will take the Kubernetes deployment we build in several previous…
KUBERNETES AUTOSCALING
On of the benefits of a Kubernetes cluster is easy scaling. In this post we configure some rules for Kubernetes autoscaling. We start off with the example application from an earlier post. The complete autoscaling code can be found on github. Autoscaling Suppose we have…
JENKINS DELOY TO KUBERNETES
We already saw how we can build and push our docker images using Jenkins in this post. Now we want to deploy this image to our local Kubernetes cluster so we have a running application. Here we go! Setup Jenkins If you want to follow…
DOCKER ON JENKINS
A lot of companies use Docker to unify their build process. Here we show how to set up a Jenkins pipeline using Docker. First follow my older post JENKINS ON MINIKUBE to get your own Jenkins instance running on minikube. Simple test application We need…
JENKINS ON MINIKUBE
In my current project we are moving our application to the cloud. This means there is a Kubernetes cluster with a Jenkins build server. To get the hang of this setup I got my own Kubernetes cluster locally with minikube and deployed a Jenkins on…