Hostname translation for docker containers

I fail to get the hostname translation for piggybacked hosts working for Docker containers.

On the docker host (dockerhost03), I’ve set “container_id: name”.

There’s a container named “mailer” on the host. Now everything works fine when I set up a checkmk host named “mailer”. The piggydata is in tmp/check_mk/piggyback/mailer/dockerhost03.

But I’d like to map this container to a host named “stage-mailer”.

I’ve set up a “Hostname translation for piggybacked hosts” with an “explicit hostname mapping” from “mailer” to “stage-mailer”. I’ve also set up up a new host “stage-mailer”.

But the host “stage-mailer” won’t pick up the piggyback data. Instead, the host “mailer” still picks up the piggyback data of the container as if there was no translation rule.

I also tried a regex rule instead of the explicit mapping, also with no effect.

A “full scan” of the host “stage-mailer” always shows:

Starting job...
 [piggyback] Execute data source
No piggyback files for 'stage-mailer'. Skip processing.

The piggyback data of the container still is in “tmp/check_mk/piggyback/mailer/dockerhost03”. Is this the expected behavior with a piggyback mapping active?

Any hint where I’m making a mistake?

After creating the rules for translation you need to cmk -vII your docker host.

Running “cmk -vII” on the host had no effect.

I guess I should break down the problem and first test whether I can get the hostname translation for piggybacked hosts to work for trivial cases without containers.