Sshd registra no contêiner do Docker não mostrado por ' logs do docker`

Usar

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

em um Dockerfile, docker logs não mostra o registro:

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 host é CentOS:

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

O back-end do registro do Docker é journald:

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

Também tentei usar json como back-end de log, sem sucesso.

Como faço para' encaminhar ' o registro corretamente?


Como sugerido por @ marioavs, '- e ' é necessário. Eu tentei '- e ' E '- D', mas não ambos ao mesmo tempo. Entao:

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

Usar - o opção de linha de comando para encaminhar todas as mensagens para erro padrão (do sshd docs):

- o Escreva logs de depuração para erro padrão em vez do log do sistema.

Encontrei um bom exemplo no seguinte arquivo Docker:

servidor sshd baseado em alpine simples