在 Dockerfile 中启动 kdc



在Dockerfile中,我输入了以下内容:

COPY docker-files/krb5.conf /etc
RUN /usr/sbin/krb5kdc -P /var/run/krb5kdc.pid;

期望当我使用"docker run -it"命令时,KDC 将启动。

但是,启动 docker VM 后,KDC 未运行。 我的期望正确吗?

谢谢

RUN 与 CMD 不同

https://docs.docker.com/engine/reference/builder/#cmd

入口点

https://docs.docker.com/engine/reference/builder/#entrypoint

默认情况下,docker 容器执行它在 CMD 中的内容并退出,因此这是"正常的"。

尝试用CMD替换RUN,重建并重新启动

另请参阅吱吱作响的答案

Dockerfile 中的 CMD 和 ENTRYPOINT 有什么区别?

首先,使用 CMD(在运行时生效)而不是 RUN(在构建时生效)

然后用-n将 krb 放在前景中:

CMD /usr/sbin/krb5kdc -n -P /var/run/krb5kdc.pid

但是,如果它仍然不起作用,请发布该容器的docker logs

相关内容

  • 没有找到相关文章

最新更新