Журналы SSHd в контейнере Docker не отображаются в разделе "Журналы docker`

При использовании

CMD ["/usr/sbin/sshd", "-D"]

в файле Dockerfile, docker logs не показывает ведение журнала:

cat > Dockerfile.stdout <<EOFFROM alpine:latestRUN    apk add --no-cache openssh-server \    && mkdir /var/run/sshd \    && ssh-keygen -ACMD ["/usr/sbin/sshd", "-D"]EOFdocker build -f Dockerfile.stdout -t sshd-stdout .docker run --name sshd-stdout -d sshd-stdoutdocker logs sshd-stdout<empty>

Хост Docker - CentOS:

cat /etc/redhat-releaseCentOS Linux release 7.6.1810 (Core)

Серверная часть ведения журнала Docker - это journald:

grep ^OPTIONS /etc/sysconfig/dockerOPTIONS='--selinux-enabled --log-driver=journald --signature-verification=false'

Я также попытался использовать json в качестве серверной части ведения журнала, но безуспешно.

Как мне правильно "переслать" ведение журнала?


Как предложил @marioavs, '-e' необходим. Я пробовал "-e" и "-D", но не оба одновременно. Так:

cat > Dockerfile.stdout <<EOFFROM alpine:latestRUN    apk add --no-cache openssh-server \    && mkdir /var/run/sshd \    && ssh-keygen -ACMD ["/usr/sbin/sshd", "-D", "-e"]EOF

Воспользуйся -этот опция командной строки для пересылки всех сообщений в стандартную ошибку (из документов sshd):

-этот Записывайте журналы отладки в стандартный журнал ошибок вместо системного журнала.

Я нашел хороший пример в следующем файле Docker:

простой сервер SSHD на базе alpine