Reverse engineer a Docker run command from an existing container

During my usual backup routine, I wanted to gather how a Docker container I started a while ago was run, especially the docker run command; this is required in case I need to re-run that container and I want to preserve the options (e.g. env variables, ports, etc.). Let’s make an example. I run a … Continue reading Reverse engineer a Docker run command from an existing container

Docker and containerd on openSUSE: reaching the limit for cgroup (and how to overcome it!)

I recently encountered a limitation during an experiment I was conducting; after some trial and error, I recognized that the limitation was due to cgroups. But let’s start from the beginning. I open sourced docker-salt, a small pet project I had in mind in order to have a full blown setup for SaltStack: a master … Continue reading Docker and containerd on openSUSE: reaching the limit for cgroup (and how to overcome it!)

Secure your SSH server against brute-force attacks with Fail2ban

The problem: SSH can be brute-forced I usually leave an SSH server on a dedicated port on every server I administer and, as you may recall, I even linked two well-written guides to properly configure and harden SSH services. Now, Internet is a notoriously bad place: scanners and exploiters have always been there, but brute-forcers … Continue reading Secure your SSH server against brute-force attacks with Fail2ban

OpenSUSE Leap 42.2: this is how I work (my setup)

Motivation I switched my distribution of choice to OpenSUSE. There are a lot of motivations behind this choice: I wanted an enterprise-grade quality of software in terms of stability, package choice, and supportability Growing interest in software non-distribution specific and/or customized, e.g. Gnome Dogfooding After nearly one year of usage, I can say that I … Continue reading OpenSUSE Leap 42.2: this is how I work (my setup)

Checkstyle and DetailAST

If you are running Checkstyle (for checking Java style) and you are stuck with this error: checkstyle: [checkstyle] Running Checkstyle 6.11.2 on 2324 files [checkstyle] Can’t find/access AST Node typecom.puppycrawl.tools.checkstyle.api.DetailAST which is a cryptic error with no whatsoever Google result on how to fix it, stand back: I have the solution! You probably have these … Continue reading Checkstyle and DetailAST

git: deleting remote tracked branches

Since I’m always DuckDuckGo-ing for these information, I’ll set a note here for future reference and for all of you, fellow readers. Situation: one (or more) remote-tracked git branches got deleted (either locally or remote). You are in either one of the two cases following: you have deleted the local branch and you want to … Continue reading git: deleting remote tracked branches

Unusual way of backup sensitive data

Over the weekend I was in a backup mood, so I decided to start backup everything on my local computers. First of all, I started with sensitive data (which I call vault), namely: credentials for local and remote machines SSH keys (and associated passphrases) Hard Disk encryption keys Wi-Fi passwords PGP keys (and associated passphrases) … Continue reading Unusual way of backup sensitive data

git tip: multiple identities

If you are using git version control for personal and work repositories, it is tricky to change your email address (in ~/.gitconfig) to properly use the correct email before committing to a repo (this is what I do, depending on the nature of the repo: personal repo -> personal email, work repo -> work email). … Continue reading git tip: multiple identities

ZeroTurnaround’s Java Tools and Technologies Landscape Report 2016

As of every year, ZeroTurnaround released the yearly report of their survey about Java and Java-related technologies among professional developers. I find this report very interesting, and I usually compare (or discover) existing technology solutions. For example, right now I’m currently thinking about moving to Intellij IDEA. How do you measure up against the report?

OpenVPN with multiple configurations (TCP/UDP) on the same host (with systemd)

As much more people are getting worried about their online privacy (including me), I started to use a server as a VPN termination (with OpenVPN) when I need to access the Internet via non-secure wired or wireless networks (e.g., hotel wireless network, airport Wi-Fi, etc.). Some overzealous network admins, though, try to lock down the … Continue reading OpenVPN with multiple configurations (TCP/UDP) on the same host (with systemd)