如何让 docker 容器从 /etc/motd 加载文本

use*_*948 6 docker

我在 /etc/motd 中有一条消息,并希望每次有人登录容器时它都会显示,但由于某种原因它没有显示。我在这里缺少什么?

cre*_*ack 5

我想你可以添加cat /etc/motd你的.profile.bashrc. 取决于“登录到容器”的含义。

user2915097 是对的:Docker 中没有魔法,就像在任何服务器上一样。


小智 5

man motd说:

\n
The contents of /etc/motd are displayed by pam_motd(8)\nafter a successful login but just before it executes the login shell.\n
Run Code Online (Sandbox Code Playgroud)\n

因此,从技术上讲,您缺少 PAM 模块,但由于这是有关 Docker 的问题,我强烈建议您不要尝试安装它。这将违背 docker 最佳实践(“Don\xe2\x80\x99t 安装不必要的软件包”)。图像必须尽可能薄。考虑使用系统范围的/etc/bash.bashrc添加一些echos 。即使您安装了pam_motd,要查看 motd,您也必须执行 exec login,而不是bash或任何其他非登录 shell。

\n

当然,所有这些都是正确的,除非您开发图像,其主要目的是显示motd

\n