socat
pode executar o comando e encaminhar o tty para "alguma coisa" .
Um exemplo é criar um servidor de rede:
socat EXEC:"docker run -ti debian bash",pty \
TCP-LISTEN:7977,bind=127.0.0.1,fork
Isso cria uma porta TCP para se conectar. A porta encaminha tudo para frente e para trás para o processo docker run
cli:
→ nc 127.0.0.1 7977
root@045041cf8e60:/# whoami
whoami
root
root@045041cf8e60:/# ^C
Os caracteres de controle são locais para nc
, portanto, o contêiner continua em execução.