Использование S SH
Вы можете запустить контейнер с опцией --net=host
, тогда можно подключиться к хосту из контейнера, используя s sh.
в режиме хоста возможно подключение к порту 22 на хосте из контейнера.
Без S SH
, если вы не Если вы хотите использовать s sh, один способ объясняется в этом посте. Вам нужно запустить контейнер с --privileged
и --pid=host
, а затем использовать команду nsenter
. С помощью этой команды вы получаете интерактивную оболочку с хоста. Вы также можете запустить только нужную команду.
$ sudo docker run --privileged --pid=host -it alpine:3.8 \
nsenter -t 1 -m -u -n -i sh
$ sudo docker run --privileged --pid=host -it alpine:3.8 \
nsenter -t 1 -m -u -n | sudo iptables -S
обратите внимание, что если вы используете MacOS или Windows, docker работает в гипервизоре, поэтому при использовании этого вы будете в оболочка гипервизора.