我的印象是包括这条线
CMD ["catalina.sh", "run"]
Dockerfile 将触发 Tomcat 服务器启动。 我已删除该行,但它仍会在部署时启动服务器。我基本上想添加 catalina.sh 运行并在 Kubernetes 部署中包含 CATALINA_OPTS 来处理这些东西,但是当我部署到容器时 Tomcat 仍然自动启动。
最佳答案
Docker 镜像通常已经有入口点或命令。
如果您根据注册表中的另一个图像创建自定义图像(这是一种常见情况),您可以通过指定 ENTRYPOINT
或 CMD
来覆盖基本图像入口点> 指令。
如果您在 docker 文件中省略入口点,它将从基础镜像继承。
考虑阅读 Dockerfile: ENTRYPOINT vs CMD文章以更好地了解其工作原理。
关于docker - 在不自动启动Tomcat的情况下在Docker容器中部署Spring Boot App,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50822347/