Working in Kubernetes most of the time, I find myself doing tons of reconnaissance around the environment I’m in. This can involve understanding the networking structure, environment variables, or other aspects of a deployed container in a distributed architecture. Additionally, testing edge functionality and communication (i.e. http headers) is especially important to ensuring everything works as expected.

With this in mind, I finally started down the path of creating my own “playground” container. Meant to come to the rescue with an easy to use entrypoint and useful tools built in, I’ve created Engage. Providing a useful set of applications like dig, tmux, and curl plus including my own take on an echo-server, this is the ultimate container for manual debugging!

By default, it will run the echo-server on 80443 (w/self-signed cert) as its CMD. This makes it easy to test ingress accessibility with quickly. You can easily exec in and run any number of tools to understand your environment. It also includes one of my favorite http debugging tools, httpstat.

Here are a few examples of running Engage:

docker run -d inanimate/engage

docker run -ti inanimate/engage /bin/zsh

docker run -ti inanimate/engage dig db.coolnamespace.cluster.local

Please feel free to submit issues/prs to help make Engage as useful as possible for the most people!

Mario Loria is a builder of diverse infrastructure with modern workloads on both bare-metal and cloud platforms. He's traversed roles in system administration, network engineering, and DevOps. You can learn more about him here.