Подавить предупреждения Docker

Да. Установите переменную IFS(, которая обычно содержит пробел, табуляцию, новую строку ), чтобы она была просто новой строкой. Таким образом, пробелы и табуляции не будут использоваться для разделения слов. Это даст вам желаемый результат.

IFS=$'\n'
set -o noglob # disable the second effect of leaving that
              # $(...) unquoted.
./name_value.sh $(echo "no_spaces"; echo "with spaces")

Однако я бы сделал так, чтобы сценарий считывался со стандартного ввода.

# name_value.sh
IFS= read -r name
IFS= read -r value
echo "Name=$name"
echo "Value=$value"

, затем

( echo no_spaces; echo with spaces ) |./name_value.sh

Я думаю, что этот подход более надежен.

3
17.12.2020, 09:14
1 ответ

Сначала проверьте, использует ли демон docker средство rsyslog под:

/etc/sysconfig/dockerОПЦИИ
/etc/docker/daemon.jsonКОНФИГУРАЦИЯ

Затем отредактируйте /etc/rsyslog.conf, чтобы удалить именно это сообщение:

##RULES FOR  DOCKER##
if $syslogseverity-text == 'warning'  and $msg contains 'No swap limit support' then stop
& ~

Перезапустить rsyslog:

systemctl restart rsyslog

Если есть файл под /etc/rsyslog.d/*docker*.conf; тогда вы можете поместить конфигурацию прямо туда и перезапустить rsyslog.

Убедитесь, что вышеуказанные строки добавлены перед вызовом файлов конфигурации $IncludeConfig /etc/rsyslog.d/*.confв /etc/rsyslog.conf.

2
18.03.2021, 22:42

Теги

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