Docker - Enter a Running Container With New TTY
Since docker 1.3, you can use
docker exec -it [container-id] bash.
To make life easier, I created the script below and placed it at
#!/bin/bash EXPECTED_NUM_ARGS=1; if [ "$#" -ne $EXPECTED_NUM_ARGS ]; then # user didn't specify which container ID, assume the latest one CONTAINER_ID=`/usr/bin/docker ps -q --no-trunc | /bin/sed -n 1p` /usr/bin/docker exec -it $CONTAINER_ID env TERM=xterm bash else # enter the container the user specified /usr/bin/docker exec -it $1 env TERM=xterm bash fi
Now make it executeable:
sudo chmod +x /usr/bin/docker-enter
Now you can just run
docker-enter $CONTAINER_ID, but best of all, if just want to enter the last container you spawned, just run the command
docker-enter without having to look up the ID.
This is especially useful on hosts where you are just running one container.
First published: 16th August 2018