Showing posts with label nsenter. Show all posts
Showing posts with label nsenter. Show all posts
Monday, August 21, 2017
Ubuntu Docker Enter Running Container With Nsenter
Ubuntu Docker Enter Running Container With Nsenter
Docker 0.11 has a new feature that allows direct host networking. Unfortunately this feature doesnt work when you set docker to use the LXC execution driver. Thus, I have found an alternative way to attach to a running container on Ubuntu, other than using lxc-attach.
This tutorial teaches you to use nsenter and not nsinit. I did initially try to use nsinit, but configuring it was not as simple (for me).
Steps
Compile the latest nsenter
#!/bin/bash
cd /tmp
curl http://bit.ly/1iLVbQU | tar -zxf-
cd util-linux-2.24
# Install the necessary tools to for make
sudo apt-get install build-essential -y
# Now compile!
./configure --without-ncurses
make nsenter
# Move nsenter into your execution PATH
sudo mv nsenter /usr/local/bin
Great, now you have nsenter. Here is a script I use to enter the first (and only) docker container I am running. I save it to "enter-first-container.sh" because its a bit much to keep copy and pasting.
#!/bin/bash
CONTAINER_ID=`docker ps --no-trunc | sed -n 2p | tr -s | cut -d -f1`
PID=`docker inspect --format {{ .State.Pid }} $CONTAINER_ID`
nsenter -m -u -n -i -p -t $PID /bin/bash
References
- Attaching to a container with Docker 0.9 and libcontainer
- Stack Overflow - Docker - Enter Running Container with new TTY
download file now
Subscribe to:
Posts (Atom)