Dockerfile适用于tomcat。在tomcat启动之后,我必须触发ant脚本。 catalina.sh是从单独的run.sh文件启动的。因此,Dockerfile具有
CMD [“/tmp/run.sh”]

run.sh文件包含以下几行:

  • catalina.sh运行
  • 上标

  • Tomcat启动,但不调用ant脚本。我还尝试了其他可能性,例如:
  • catalina.sh运行&&上标

  • tomcat启动但未触发上标

    有什么方法可以在tomcat启动后自动调用 Ant 脚本?我不想以后再使用docker exec运行脚本。

    最佳答案

    我可以想到的实现功能的方法之一是

  • 在catalina.sh,
  • 之前使用nohup命令启动上标
  • 并在上标中添加延迟(使用带有wrapper shell脚本的sleep命令)。

  • 延迟可以是简单的基于时间的等待,也可以只是监视tomcat日志,直到服务器启动完成才能开始执行。

    09-30 17:33
    查看更多