commit | 12a89d9116ab1a0a67df83e231591234aa9e59b4 | [log] [tgz] |
---|---|---|
author | Harsh Modi <harshmodi@google.com> | Mon Mar 28 11:49:59 2022 -0700 |
committer | Harsh Modi <harshmodi@google.com> | Mon Mar 28 11:51:24 2022 -0700 |
tree | 1baeac3ee8beb41c45fecc9283996e1f3d4c32f0 | |
parent | 9e4e29effe736c5e93079f9ac6362bb221fea38b [diff] |
toolbox: Fix running toolbox on non-GCE hosts. On non-GCE hosts, the docker-credential-gcr binary will fail outputing nothing, which will cause the subsequent jq operation to fail. This causes the script to exit early due to -o pipefail. BUG=b/226564252 TEST=toolbox works on non-GCE hosts. RELEASE_NOTE=none Change-Id: Iffff172df92ae117d1c21edaac67eaf07b5e20a2
toolbox is a small script that launches a container to let you bring in your favorite debugging or admin tools.
$ /usr/bin/toolbox Spawning container core-fedora-latest on /var/lib/toolbox/core-fedora-latest. Press ^] three times within 1s to kill container. -bash-4.3# yum install tcpdump ... -bash-4.3# tcpdump -i ens3 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode listening on ens3, link-type EN10MB (Ethernet), capture size 65535 bytes
toolbox uses a Fedora-based userspace environment by default, but this can be changed to any Docker image. Simply override environment variables in $HOME/.toolboxrc
:
core@core-01 ~ $ cat ~/.toolboxrc TOOLBOX_DOCKER_IMAGE=ubuntu-debootstrap TOOLBOX_DOCKER_TAG=14.04 core@core-01 ~ $ toolbox Spawning container core-ubuntu-debootstrap-14.04 on /var/lib/toolbox/core-ubuntu-debootstrap-14.04. Press ^] three times within 1s to kill container. root@core-01:~# apt-get update && apt-get install tcpdump
Set an /etc/passwd
entry for one of the users to /usr/bin/toolbox
:
useradd bob -m -p '*' -s /usr/bin/toolbox -U -G sudo,docker
Now when SSHing into the system as that user, toolbox will automatically be started:
$ ssh bob@hostname.example.com CoreOS alpha (633.1.0) ... Spawning container core-fedora-latest on /var/lib/toolbox/core-fedora-latest. -bash-4.3 # yum install emacs -bash-4.3 # emacs /media/root/etc/systemd/system/docker.service
Please use the CoreOS issue tracker to report all bugs, issues, and feature requests.