ClassLoader & memory leaks: a Java love story

We’ve been experiencing very strange memory leak in our Java application servers at work: when deploying new version of a micro service, the JVM process was running out of memory and consequently crash leading to service outage. After a bit of research, it looked like that these kind of errors were very common with this application server, especially when deploying application without restarting the server from time to time. The common fix was to restart the JVM process before putting in production, preventing any out of memory (but not the memory leak).
Read more →

Docker swarm is not dead! (yet)

I have written an article on the provisioning of a Docker Swarm cluster from scratch (you can read it here) and I have received a lot of comments stating that docker swarm is dead and that I should be moving to Kubernetes instead. What happened to docker? For those who were not aware, Mirantis (a cloud provider) has bought Docker enterprise in nov. 2019. Just after that, Mirantis has written a blog post to announce the news:
Read more →

Making a product is not even half of the path to success

As you may already know, I have launched, with a Friend, an Android application to customize phone wallpapers randomly. The development of the app itself only took us 2 months and was quite fun. The release was really exciting and the first feedback from real users was encouraging. However, things didn’t go as planned… Referral program failure Our first idea to grow our user base was to introduce a referral program.
Read more →

Harbor: your own private docker registry

Since I have containerized my whole develoment workflow, from testing to production, I needed a docker registry to centralize my private images and ensure their deployment. I didn’t wanted to use Docker Hub or Github Packages because the images would be publicly available. Therefore I have started searching for existing private registry providers… What’s a docker registry again? In a nutshell, a docker registry is a server used to upload (push) & download (pull) docker images.
Read more →

How to expose Traefik 2.x dashboard securely on Docker Swarm

This article is part of a series about Docker Swarm. For the first article please check here. On this short tutorial you’ll learn how to deploy securely the Traefik built-in dashboard with HTTPS support and basic authentication system. This article assume that you have a working Docker Swarm cluster with Traefik running with HTTPS support. If not you can following this article to get started. Traefik 2.0 has introduced a brand new dashboard app that allows a quick view on the configuration.
Read more →

Let’s build a simple quotes application

One night I was feeling inspired and decided to read again all my favorites quotes on Google Keep while listening to music. And suddenly an idea just popped into my head: why not make a little mobile friendly application to view my quotes properly? And that’s where it started… The idea The idea was to build a simple quotes application where the user can view the quotes. I didn’t wanted to built something complex or innovative, I just wanted to build quickly something clean and working.
Read more →

Taking new year resolutions seriously

What’s your resolution for the year? Oh my resolution? I always go by 4096 * 2160 Someone’s Dad Yep. Go it. These jokes aren’t funny anymore. Hopefully I’m not going to make one. This blog post is (I hope) more valuable than that ! I’m taking new year resolutions seriously since 4 years now. And as far as I’m concern it’s working great. Today I wanted to explain a bit which rules I have setup over the years to help me to choose my goals.
Read more →

Pimp your phone like never before !

You may have noticed that I haven’t write any blog posts since 1 month. I was focusing all my attention on my new Android application. And today is announcement day! Let me present you Random Wallpapers ! What the hell is Random Wallpapers? Random Wallpapers is an Android application designed to change your phone background randomly based on the things you like. Here’s how it works: First of all you choose what you like from a list of categories: Cats, Dogs, Christmas, Flowers, and so on ❤️ hen you configure the refresh rate: for example you could say: I want my phone wallpaper to change every 2 days.
Read more →

How to install Traefik 2.x on a Docker Swarm

I have recently migrated my production docker swarm from Traefik 1.7 to Traefik 2.0 and since I cannot found a good tutorial I have decided to write one. So in this tutorial you’ll learn how to deploy Traefik with HTTPS support on a docker swarm. Please note that I won’t explain what Traefik is since it may needs his own article and I will focus on the deployment and configuration. This tutorial will also assume that you have a working docker swarm.
Read more →

Go library to parse Maven POM file

I have recently written a little go tool that parse maven pom file to analyse dependencies between two projects in order to perform detailed analysis such as evolution of project dependencies, etc… After a bit of research I couldn’t find any existing parser for Go and therefore I have decided to write one. As XML parsing is supported natively in Go there is not much work to do: only declare the structure that the Go XML parser will use.
Read more →
This website is open source.
Feel free to submit a PR if you spot a mistake :)

https://github.com/creekorful/blog