docker-compose на ubntu 18.10 устройство ввода не является ошибкой TTY - PullRequest
1 голос
/ 14 июня 2019

Я установил docker и docker compose на сервере ubuntu 18.10, когда я выполняю команду docker compose с терминала, он работает, но когда я настраиваю crontab для выполнения команды с docker compose, я получаю эту ошибку: «Переменная USER не задано. По умолчанию используется пустая строка. Устройство ввода не является TTY "

Ошибка USER связана с ошибкой с docker-compose.yml, просто используйте $ {USER}.

Как я могу решить проблему?

PS: Он работал нормально на сервере Ubuntu 18.04.

1 Ответ

0 голосов
/ 16 июня 2019

Демон cron был спроектирован таким образом, что он НЕ выполняет команды в обычной среде оболочки. Это означает, что вы не можете использовать голые команды в cron так же, как в командной строке оболочки SSH. Это связано с тем, что переменная среды PATH - это / usr / bin: / bin, а переменная среды SHELL установлена ​​в /bin/sh.

.

Что-то, на что вы можете сослаться: здесь и здесь .

Так что вам, возможно, придется указывать переменную окружения оболочки непосредственно в crontab, например

USER=xxx
* * * * * /bin/echo ${USER}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...