Задать вопрос
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

закомментированные строки — мои попытки создать псевдотерминал.
  • Вопрос задан
  • 244 просмотра
Подписаться 1 Сложный 2 комментария
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Python-разработчик
    10 месяцев
    Далее
  • Яндекс Практикум
    Мидл фронтенд-разработчик
    5 месяцев
    Далее
  • Яндекс Практикум
    Инженер облачных сервисов
    2 месяца
    Далее
Пригласить эксперта
Ваш ответ на вопрос

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

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