<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Posts on Roland Huß</title><link>https://ro14nd.de/posts/</link><description>Recent content in Posts on Roland Huß</description><generator>Hugo -- gohugo.io</generator><language>en</language><copyright>© 2026 Roland Huß</copyright><lastBuildDate>Wed, 11 Jul 2018 00:00:00 +0000</lastBuildDate><atom:link href="https://ro14nd.de/posts/index.xml" rel="self" type="application/rss+xml"/><item><title>First look at Jib</title><link>https://ro14nd.de/jib-vs-dmp/</link><pubDate>Wed, 11 Jul 2018 00:00:00 +0000</pubDate><guid>https://ro14nd.de/jib-vs-dmp/</guid><description>&lt;p&gt;As soon as Google&amp;rsquo;s blog post &lt;a href="https://cloudplatform.googleblog.com/2018/07/introducing-jib-build-java-docker-images-better.html" target="_blank" rel="noreferrer"&gt;&amp;ldquo;Introducing Jib — build Java Docker images better&amp;rdquo;&lt;/a&gt; was online, all my channels went crazy about &lt;a href="https://github.com/GoogleContainerTools/jib" target="_blank" rel="noreferrer"&gt;Jib&lt;/a&gt;.
That was a bit surprising as Jib was started over one year ago but with this blog post this project rockets with more than 1000 new GitHub stars within one day. Crazy.&lt;/p&gt;
&lt;p&gt;I got a lot asked yesterday how Jib compares to &lt;a href="https://github.com/fabric8io/docker-maven-plugin" target="_blank" rel="noreferrer"&gt;fabric8io/docker-maven-plugin&lt;/a&gt; (d-m-p) or &lt;a href="https://github.com/fabric8io/fabric8-maven-plugin" target="_blank" rel="noreferrer"&gt;fabric8io/fabric8-maven-plugin&lt;/a&gt; which includes d-m-p.&lt;/p&gt;
&lt;p&gt;Let me try to shed some light on the differences and pro and cons of both approaches.&lt;/p&gt;</description></item><item><title>docker-maven-plugin might be still useful</title><link>https://ro14nd.de/dmp-not-so-bad/</link><pubDate>Thu, 05 Jul 2018 00:00:00 +0000</pubDate><guid>https://ro14nd.de/dmp-not-so-bad/</guid><description>&lt;p&gt;Yesterday a blog post &lt;a href="https://codefresh.io/howtos/using-docker-maven-maven-docker/" target="_blank" rel="noreferrer"&gt;Using Docker from Maven and Maven from Docker&lt;/a&gt; by &lt;a href="https://twitter.com/codepipes" target="_blank" rel="noreferrer"&gt;Kostis Kapelonis&lt;/a&gt; was published which gives some insights on the possible relationships between Docker and Maven.
The article makes some essential points really, and gives an overview for the two remaining Docker Maven plugins as well as how &lt;a href="https://codefresh.io/" target="_blank" rel="noreferrer"&gt;Codefresh&lt;/a&gt; recommends doing Docker multi-stage builds as the alternative.
As I&amp;rsquo;m the maintainer of the &lt;a href="https://dmp.fabric8.io/" target="_blank" rel="noreferrer"&gt;fabric8io/docker-maven-plugin&lt;/a&gt;, I&amp;rsquo;d like to comment on this matter.&lt;/p&gt;
&lt;p&gt;I already commented on the original blog post (thanks for approving the comment), but I&amp;rsquo;m happy to repeat my arguments
here again.&lt;/p&gt;</description></item><item><title>Elegant Camel route configuration</title><link>https://ro14nd.de/camel-routes-simplified/</link><pubDate>Tue, 03 Jul 2018 00:00:00 +0000</pubDate><guid>https://ro14nd.de/camel-routes-simplified/</guid><description>&lt;p&gt;I&amp;rsquo;m a big fan of the &lt;a href="https://camel.apache.org/java-dsl.html" target="_blank" rel="noreferrer"&gt;Camel Java DSL&lt;/a&gt; for defining Camel routes with a &lt;code&gt;RouteBuilder&lt;/code&gt;. This is super easy and slim. However, in this blog post I show you a nerdy trick how this can be done even more elegant.&lt;/p&gt;</description></item><item><title>When a Dockerfile is just good enough</title><link>https://ro14nd.de/simple-dockerfile-mode-dmp/</link><pubDate>Thu, 12 Apr 2018 00:00:00 +0000</pubDate><guid>https://ro14nd.de/simple-dockerfile-mode-dmp/</guid><description>&lt;p&gt;As you might know, one of my Open Source babies is the one and only &lt;a href="https://github.com/fabric8io/docker-maven-plugin/" target="_blank" rel="noreferrer"&gt;fabric8io/docker-maven-plugin&lt;/a&gt; (d-m-p).
If you already use this Maven plugin, you know, that it is super powerful and flexible to configure.
This flexibility comes at a price so that the configuration can become quite complicated.
Now, if you only want to &lt;em&gt;build&lt;/em&gt; Docker images with Maven, I have good news:
Since 0.25.1 d-m-p supports a zero XML configuration mode, the so-called &lt;a href="https://dmp.fabric8.io/#simple-dockerfile-build" target="_blank" rel="noreferrer"&gt;Simple Dockerfile Build&lt;/a&gt; mode.&lt;/p&gt;</description></item><item><title>Bringing Octobox to OpenShift Online</title><link>https://ro14nd.de/octobox-oso/</link><pubDate>Sun, 25 Mar 2018 00:00:00 +0000</pubDate><guid>https://ro14nd.de/octobox-oso/</guid><description>&lt;p&gt;&lt;a href="https://github.com/octobox/octobox" target="_blank" rel="noreferrer"&gt;Octobox&lt;/a&gt; is for sure one of my favourite tools in my GitHub centred developer workflow.
It is incredible for GitHub notification management which allows me to ignore all the hundreds of GitHub notification emails I get daily.&lt;/p&gt;
&lt;p&gt;Octobox is a Ruby-on-Rails application and can be used as SaaS at &lt;a href="https://octobox.io" target="_blank" rel="noreferrer"&gt;octobox.io&lt;/a&gt; or installed and used separately.
Running Octobox in an own account is especially appealing for privacy reasons and for advanced features which are not enabled in the hosted version (like periodic background fetching or more information per notification).&lt;/p&gt;
&lt;p&gt;This post shows how Octobox can be ported to the free &amp;ldquo;starter&amp;rdquo; tier of &lt;a href="https://www.openshift.com/pricing/index.html" target="_blank" rel="noreferrer"&gt;OpenShift Online&lt;/a&gt;.&lt;/p&gt;</description></item><item><title>Dash2Alexa - Amazon Alexa Audio API Access</title><link>https://ro14nd.de/dash-2-alexa/</link><pubDate>Mon, 12 Mar 2018 00:00:00 +0000</pubDate><guid>https://ro14nd.de/dash-2-alexa/</guid><description>&lt;p&gt;Since I got my first Amazon Echo end of last year, I love it.
And although, as a typical German, I&amp;rsquo;m still a bit concerned about data privacy, at the end, convenience wins (as always :).
There are many things which work flawlessly, and to be honest, the most used feature for me is a simple timer.
But when it comes to aggregate actions, Alexa is still quite limited.
Ok, you can define your routines, but for only an insufficient set of fixed actions.
What I really would love to have is to start the radio when I get up in the morning, but this is not possible at the moment.&lt;/p&gt;
&lt;p&gt;So I remembered my last years Amazon Dash button hacks and thought it would be cool to combine both, the Dash button and Alexa.&lt;/p&gt;
&lt;p&gt;And here it is, my weekend hack &amp;hellip;..&lt;/p&gt;</description></item><item><title>RasPi 3 Kubernetes Cluster - An Update</title><link>https://ro14nd.de/k8s-on-pi-update/</link><pubDate>Wed, 05 Apr 2017 00:00:00 +0000</pubDate><guid>https://ro14nd.de/k8s-on-pi-update/</guid><description>&lt;p&gt;Our Ansible Playbooks for installing Kubernetes on a Raspberry Pi Cluster have been constantly updated and are now using the awesome &lt;a href="https://github.com/kubernetes/kubeadm" target="_blank" rel="noreferrer"&gt;kubeadm&lt;/a&gt;. The update to Kubernetes 1.6. was a bit tricky, though.&lt;/p&gt;</description></item><item><title>Why Jolokia is not RESTful</title><link>https://ro14nd.de/jolokia-is-not-rest/</link><pubDate>Thu, 03 Nov 2016 00:00:00 +0000</pubDate><guid>https://ro14nd.de/jolokia-is-not-rest/</guid><description>&lt;p&gt;From time to time people come to me and say: &amp;ldquo;I really would love Jolokia if only it would be RESTful&amp;rdquo;. This post tells you why.&lt;/p&gt;</description></item><item><title>Java EE Management is dead</title><link>https://ro14nd.de/java-management-is-dead/</link><pubDate>Mon, 10 Oct 2016 00:00:00 +0000</pubDate><guid>https://ro14nd.de/java-management-is-dead/</guid><description>&lt;p&gt;Now that some weeks has been passed we all had time to absorb the &lt;a href="https://java.net/downloads/javaee-spec/JavaEE8Update.pdf" target="_blank" rel="noreferrer"&gt;revised Java EE 8 proposal&lt;/a&gt; presented at Java One. As you know, some JSRs remained, some things were added and some stuff was dropped. &lt;a href="https://www.jcp.org/en/jsr/detail?id=373" target="_blank" rel="noreferrer"&gt;Java EE Management API 2.0&lt;/a&gt;, supposed to be a modern successor of JSR 77, is one of the three JSRs to be dropped.&lt;/p&gt;
&lt;p&gt;What does this mean for the future of Java EE management and monitoring ?&lt;/p&gt;</description></item><item><title>A Raspberry Pi 3 Kubernetes Cluster</title><link>https://ro14nd.de/kubernetes-on-raspberry-pi3/</link><pubDate>Wed, 27 Apr 2016 00:00:00 +0000</pubDate><guid>https://ro14nd.de/kubernetes-on-raspberry-pi3/</guid><description>&lt;p&gt;Let&amp;rsquo;s build a Raspberry Pi Cluster running Docker and Kubernetes. There has been already a handful of good recipes, however this howto is a bit different and provides some unique features.&lt;/p&gt;</description></item><item><title>docker-maven-plugin moves on</title><link>https://ro14nd.de/dmp-moves-on/</link><pubDate>Wed, 24 Feb 2016 00:00:00 +0000</pubDate><guid>https://ro14nd.de/dmp-moves-on/</guid><description>&lt;p&gt;&lt;strong&gt;rhuss/docker-maven-plugin&lt;/strong&gt; is dead, long live &lt;strong&gt;fabric8io/docker-maven-plugin&lt;/strong&gt; !&lt;/p&gt;</description></item><item><title>Registry Magic with docker-maven-plugin</title><link>https://ro14nd.de/registry-magic-with-dmp/</link><pubDate>Thu, 21 Jan 2016 00:00:00 +0000</pubDate><guid>https://ro14nd.de/registry-magic-with-dmp/</guid><description>&lt;p&gt;Dealing with multiple Docker registries is hard, mostly because the meta information where a image is located is part of a Docker image&amp;rsquo;s name, which is typically used as an identifier, too.&lt;/p&gt;
&lt;p&gt;Let&amp;rsquo;s see how the &lt;a href="https://github.com/rhuss/docker-maven-plugin" target="_blank" rel="noreferrer"&gt;rhuss/docker-maven-plugin&lt;/a&gt; deals with this peculiarity.&lt;/p&gt;</description></item><item><title>Jolokia 2.0 - JMX Notifications</title><link>https://ro14nd.de/jolokia-notifications/</link><pubDate>Wed, 13 Jan 2016 00:00:00 +0000</pubDate><guid>https://ro14nd.de/jolokia-notifications/</guid><description>&lt;p&gt;This screencast gives a live demo of the forthcoming JMX notification support in Jolokia 2.0.&lt;/p&gt;</description></item><item><title>Welcome to 2016 - the year Jolokia 2.0 will see the light of day</title><link>https://ro14nd.de/jolokia-in-2016/</link><pubDate>Wed, 06 Jan 2016 00:00:00 +0000</pubDate><guid>https://ro14nd.de/jolokia-in-2016/</guid><description>&lt;p&gt;I hope you all had a good start into 2016 and have charged all your batteries during the time of stillness.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://www.jolokia.org" target="_blank" rel="noreferrer"&gt;Jolokia&lt;/a&gt; had a good start, too. During the holiday season I took the opportunity to continue to work on version 2.0 which now takes on form. If you have followed the history of Jolokia you know that work on 2.0 started early 2013 but advanced quite slowly for multiple reasons.&lt;/p&gt;
&lt;p&gt;Now its time to go out on a limb with announcing Jolokia 2.0 for 2016. A bit of pressure sometimes really helps ;-)&lt;/p&gt;</description></item><item><title>fish-pepper - Docker on Capsaicin</title><link>https://ro14nd.de/fish-pepper-announcement/</link><pubDate>Mon, 07 Sep 2015 00:00:00 +0000</pubDate><guid>https://ro14nd.de/fish-pepper-announcement/</guid><description>&lt;p&gt;When I had to create multiple Docker base images which only differ slightly for some minor variations I couldn&amp;rsquo;t avoid to feel quite dirty because of all the copying &amp;amp; pasting of Dockerfile fragments. We all know how this smells, but unfortunately Docker has only an answer for &lt;strong&gt;inheritance&lt;/strong&gt; but not for &lt;strong&gt;composition&lt;/strong&gt; of Docker images. Luckily there is now &lt;a href="https://github.com/fabric8io/fish-pepper" target="_blank" rel="noreferrer"&gt;fish-pepper&lt;/a&gt;, a multi-dimensional docker build generator, which steps into the breach.&lt;/p&gt;</description></item><item><title>Jmx4Perl for everyone</title><link>https://ro14nd.de/jmx4perl-docker/</link><pubDate>Tue, 28 Jul 2015 00:00:00 +0000</pubDate><guid>https://ro14nd.de/jmx4perl-docker/</guid><description>&lt;p&gt;As you might know, &lt;a href="http://www.jmx4perl.org" target="_blank" rel="noreferrer"&gt;Jmx4Perl&lt;/a&gt; is the mother of &lt;a href="https://jolokia.org/" target="_blank" rel="noreferrer"&gt;Jolokia&lt;/a&gt;. But what might be not so known is, that Jmx4Perl provides a set of nice CLI tools for accessing Jolokia agents. However, installing Jmx4Perl manually is cumbersome because of its many Perl and also native dependencies.&lt;/p&gt;
&lt;p&gt;However, if you are a Docker user there is now a super easy way to benefit from this gems.&lt;/p&gt;</description></item><item><title>docker:watch</title><link>https://ro14nd.de/maven-docker-watch/</link><pubDate>Tue, 30 Jun 2015 00:00:00 +0000</pubDate><guid>https://ro14nd.de/maven-docker-watch/</guid><description>&lt;p&gt;Ok, you know Docker. And since you are a Java developer you want to know how you can use this in your daily development workflow. You probably also heard about &lt;em&gt;the&lt;/em&gt; &lt;a href="https://github.com/rhuss/docker-maven-plugin" target="_blank" rel="noreferrer"&gt;docker-maven-plugin&lt;/a&gt; which seamlessly creates Docker images, starts and stops Docker containers and more all with a concise configuration syntax.&lt;/p&gt;
&lt;p&gt;And now there is this new goal &lt;code&gt;docker:watch&lt;/code&gt;.&lt;/p&gt;</description></item><item><title>The Docker Wormhole Pattern</title><link>https://ro14nd.de/docker-wormhole-pattern/</link><pubDate>Wed, 17 Jun 2015 00:00:00 +0000</pubDate><guid>https://ro14nd.de/docker-wormhole-pattern/</guid><description>&lt;p&gt;Building a Docker wormhole is easy.&lt;/p&gt;</description></item><item><title>Jmx4Perl on OS X</title><link>https://ro14nd.de/jmx4perl-on-osx/</link><pubDate>Mon, 23 Mar 2015 00:00:00 +0000</pubDate><guid>https://ro14nd.de/jmx4perl-on-osx/</guid><description>&lt;p&gt;The HTTP-JMX Bridge &lt;a href="http://www.jolokia.org" target="_blank" rel="noreferrer"&gt;Jolokia&lt;/a&gt; allows easy access to JMX. It exposes all JMX information and operations via an REST-like interface and has tons of nifty features. &lt;a href="http://search.cpan.org/~roland/jmx4perl/" target="_blank" rel="noreferrer"&gt;Jmx4Perl&lt;/a&gt; on the other side is a client for Jolokia, which beside Perl access modules also provides quite some nice CLI tools for accessing and installing Jolokia. This post explains how install these tools on OS X.&lt;/p&gt;</description></item><item><title>Health Checks with Jolokia</title><link>https://ro14nd.de/health-checks/</link><pubDate>Sat, 17 Jan 2015 00:00:00 +0000</pubDate><guid>https://ro14nd.de/health-checks/</guid><description>&lt;p&gt;A &lt;em&gt;health check&lt;/em&gt; is a useful technique for determining the overall operational state of a system in a consolidated form. It provides some kind of internal monitoring which collects metrics, evaluates them against some thresholds and provides a unified result. Health checks are now coming to &lt;a href="http://www.jolokia.org" target="_blank" rel="noreferrer"&gt;Jolokia&lt;/a&gt;. This post explains the strategy to include health checks into Jolokia without blowing up the agents to much.&lt;/p&gt;</description></item><item><title>Real clean Maven builds with Docker</title><link>https://ro14nd.de/clean-maven-builds-with-docker/</link><pubDate>Fri, 07 Nov 2014 00:00:00 +0000</pubDate><guid>https://ro14nd.de/clean-maven-builds-with-docker/</guid><description>&lt;p&gt;A local Maven repository serves as a cache for artifacts and dependencies, we all know this. This helps in speeding up things but can cause subtle problems when doing releases. Docker can help here a bit for avoiding caching issues.&lt;/p&gt;</description></item><item><title>Docker maven plugin rewrite</title><link>https://ro14nd.de/docker-maven-plugin-rewrite/</link><pubDate>Mon, 13 Oct 2014 00:00:00 +0000</pubDate><guid>https://ro14nd.de/docker-maven-plugin-rewrite/</guid><description>&lt;p&gt;My &lt;a href="https://github.com/rhuss/docker-maven-plugin" target="_blank" rel="noreferrer"&gt;docker-maven-plugin&lt;/a&gt; is undergoing a major refactoring. This post explains the motivation behind this and also what you can expect in the very near future.
The configuration syntax becomes much cleaner and implicit behavior was removed.&lt;/p&gt;</description></item><item><title>Spicy Docker Java Images with Jolokia</title><link>https://ro14nd.de/jolokia-docker-image/</link><pubDate>Thu, 09 Oct 2014 00:00:00 +0000</pubDate><guid>https://ro14nd.de/jolokia-docker-image/</guid><description>&lt;p&gt;While on the way of transforming the &lt;a href="http://www.jolokia.org" target="_blank" rel="noreferrer"&gt;Jolokia&lt;/a&gt; integration test suite from a tedious, manual, half-a-day procedure to a full automated process I ran into and felt in love with &lt;a href="http://docker.io" target="_blank" rel="noreferrer"&gt;Docker&lt;/a&gt;. As a byproduct a &lt;a href="https://registry.hub.docker.com/u/jolokia/java-jolokia/" target="_blank" rel="noreferrer"&gt;java-jolokia&lt;/a&gt; docker repository emerged, which can be easily used as a Java base image for enabling a Jolokia JVM agent during startup for any Java application.&lt;/p&gt;</description></item><item><title>Using NSEnter with Boot2Docker</title><link>https://ro14nd.de/nsenter-with-boot2docker/</link><pubDate>Mon, 01 Sep 2014 00:00:00 +0000</pubDate><guid>https://ro14nd.de/nsenter-with-boot2docker/</guid><description>&lt;p&gt;&lt;a href="https://github.com/jpetazzo/nsenter" target="_blank" rel="noreferrer"&gt;NSEnter&lt;/a&gt; is a nice way to connect to a running Docker container. This post presents a script to simplify the usage of &lt;code&gt;nsenter&lt;/code&gt; together with &lt;a href="https://github.com/boot2docker/boot2docker" target="_blank" rel="noreferrer"&gt;Boot2Docker&lt;/a&gt;.&lt;/p&gt;</description></item><item><title>Docker for (Java) Developers</title><link>https://ro14nd.de/docker-for-developers/</link><pubDate>Mon, 25 Aug 2014 00:00:00 +0000</pubDate><guid>https://ro14nd.de/docker-for-developers/</guid><description>&lt;p&gt;Recently I gave a Meetup talk for the &lt;a href="http://www.meetup.com/Docker-Munich/" target="_blank" rel="noreferrer"&gt;Docker Munich&lt;/a&gt; Meetup Group which explained how Docker can help developers to improve integration tests and to ship applications.&lt;/p&gt;</description></item><item><title>Jolokia and CORS</title><link>https://ro14nd.de/jolokia-cors/</link><pubDate>Mon, 18 Aug 2014 00:00:00 +0000</pubDate><guid>https://ro14nd.de/jolokia-cors/</guid><description>&lt;p&gt;&lt;a href="http://www.jolokia.org" target="_blank" rel="noreferrer"&gt;Jolokia&lt;/a&gt; has configurable &lt;a href="http://www.w3.org/TR/cors/" target="_blank" rel="noreferrer"&gt;CORS&lt;/a&gt; support so that it plays nicely together with the Browser world when it comes to cross origin requests. However, Jolokia’s CORS support is not without gotchas. This post explains how Jolokias CORS supports works, what are the issues and how I plan to solve them.&lt;/p&gt;</description></item><item><title>Removing attachments with JavaMail</title><link>https://ro14nd.de/removing-attachments-with-javamail/</link><pubDate>Mon, 29 Mar 2010 00:00:00 +0000</pubDate><guid>https://ro14nd.de/removing-attachments-with-javamail/</guid><description>&lt;p&gt;If you have ever sent or received mail messages via Java, chances are high that you have used JavaMail for this task.
Most of the time JavaMail does an excellent job and a lot of use cases are described in the JavaMail FAQ.
But there are still some additional quirks you should be aware of when doing advanced mail operations like adding or removing attachments (or “Parts”) from existing mails retreived from some IMAP or POP3 store.
This post gives a showcase for how to remove an attachment from a mail at an arbitrary level which has been obtained from an IMAP store.&lt;/p&gt;</description></item></channel></rss>