Как подсоединиться к бегущему Docker -контейнеру
Иногда бывает нужно что-то проверить на уже собранном и работающем Docker-контейнере.
Запустить парочку команд, пропинговать удалённый хост и т.п.
Для этого нужно подсоединиться к контейнеру и запустить внутри него какой-то shell.
Например вот так:
- Узнаём ID нужного контейнера:
root@myserver:~# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
57294f48cfe2 myimage/monit "/entrypoint.sh moni…" 22 hours ago Up 7 minutes 0.0.0.0:2312->2312/tcp, 2812/tcp monit
8c95f8bda224 nginx:1.19.9-alpine "/docker-entrypoint.…" 22 hours ago Up 7 minutes 80/tcp, 0.0.0.0:443->443/tcp nginx
root@myserver:~#
- Копируем и используем, например этот - 57294f48cfe2
docker container exec -it 57294f48cfe2 /bin/bash
root@myserver:~# docker container exec -it 57294f48cfe2 /bin/bash
root@57294f48cfe2:/# pwd
/
root@57294f48cfe2:/# ls
bin boot dev entrypoint.sh etc home lib lib64 media mnt opt proc root run sbin srv sys test.py tmp usr var
root@57294f48cfe2:/#