youngmysteriouslight
@youngmysteriouslight
ТК, ТТ, JS, FP, WM

Как симулировать TTY на этапе сборки (build) образа Docker?

При подготовке образа необходимо запустить стороннюю консольную программу.
Возникает сообщение об ошибке.
stty: 'standard input': Inappropriate ioctl for device

Я думаю, это связано с тем, что где-то в этой программе делается stty -a или что-то подобное.
Скажу сразу, что если вызвать программу в контейнере (docker run), всё ок.

Вот минимальный скрипт, который воспроизводит ошибку. Он вызывается командой RUN в докерфайле. Основной образ ubuntu:18.04.
#mknod -m 660 /dev/ttyS0 c 4 64
#chown root:tty /dev/ttyS0
#setsid sh -c 'exec stty -a <> /dev/tty >&0 2>&1'
#echo '======'

stty -a

закомментированные строки — мои попытки создать псевдотерминал.
  • Вопрос задан
  • 229 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы