Sign inSign up

ragnarb/toolbox

By ragnarb

•Updated over 11 years ago

A CoreOS toolbox, based on Debian Jessie

Image
1

1M+

ragnarb/toolbox repository overview

A CoreOS toolbox container based on Debian Jessie, with some niceties such as zsh and a fully fledged vim. To use, instruct the toolbox utility to use ragnarb/toolbox instead of the default fedora container. The source can be found on Github⁠.

⁠Tools included

The toolbox is geared towards performance metric gathering and debugging. Some of the tools include generic ones like htop, dstat, atop and sar; more specific tools like iostat, iotop, blktrace, iozone, vmstat, slabtop, pidstat, lsof and mpstat; network oriented tools like mtr, tcpdump, nicstat, iftop, iperf, ethtool and the iproute2 tools; and strace/ltrace and sysdig for tracing. A docker binary matching the latest release on CoreOS stable is also included.

Note that in order to use sysdig you must bind /dev from the host into the toolbox and run sysdig-probe-loader to load the relevant kernel module. To use the host's docker daemon from within the toolbox bind /var/run/docker.sock to /docker/docker.sock. See the usage section below for how to do this automatically.

For a full list of tools installed, see the Dockerfile⁠.

⁠Usage

Configure the toolbox utility to use this container instead of the default one by specifying TOOLBOX_DOCKER_IMAGE=ragnarb/toolbox in $HOME/.toolboxrc. See the CoreOS documentation⁠ for details.

Setting up the toolbox with /dev and /var/run/docker.sock bound and zsh instead of bash can done with a .toolboxrc along the lines of:

TOOLBOX_DOCKER_IMAGE=ragnarb/toolbox
TOOLBOX_CMD="$@"

if [ -z "$TOOLBOX_PROVISIONED" ]; then
    export TOOLBOX_PROVISIONED=1
    test -z "$TOOLBOX_CMD" && TOOLBOX_CMD=zsh
    exec /usr/bin/toolbox --bind=/dev:/dev --bind=/var/run/docker.sock:/docker/docker.sock $TOOLBOX_CMD
fi

Writing the .toolboxrc when provisioning can be accomplished with a section like this in your cloud-config:

#cloud-config
write_files:
  - path: /home/core/.toolboxrc
    owner: core
    content: |
      TOOLBOX_DOCKER_IMAGE=ragnarb/toolbox
      TOOLBOX_CMD="$@"

      if [ -z "$TOOLBOX_PROVISIONED" ]; then
          export TOOLBOX_PROVISIONED=1
          test -z "$TOOLBOX_CMD" && TOOLBOX_CMD=zsh
          exec /usr/bin/toolbox --bind=/dev:/dev --bind=/var/run/docker.sock:/docker/docker.sock $TOOLBOX_CMD
      fi
⁠License

BSD 2-Clause. See the LICENSE file for details.

Tag summary

Content type

Image

Digest

sha256:6909085dc…

Size

-

Last updated

over 11 years ago

docker pull ragnarb/toolbox