如何在Ansible上运行tomcat catalina脚本

时间:2016-08-31 06:17:13

标签: tomcat deployment tomcat7 ansible ansible-playbook

我正在尝试为tomcat应用程序部署设置Ansible playbook。除了启动tomcat之外,一切都没有任何问题。当我使用startup.sh它可以工作,但我需要用catalina.sh脚本启动tomcat。

   - name: start tomcat
     command: ./bin/catalina.sh start
     args:
       chdir: /websrv/tomcat/tomcat-8080/

这就是我想要做的事情,它说开始了,但它从未开始。

TASK [start tomcat] ************************************************************
changed: [appserver.example.com]

请帮忙。

注意:我在centos上使用了tomcat的压缩版本并且没有安装tomcat。因此,如果有人明白如何启动脚本,那将非常有用。

2 个答案:

答案 0 :(得分:4)

内置的Tomcat管理脚本不会从tty中分离,导致它们在Ansible ssh会话结束时被杀死。您需要破解脚本以使其成为后台/分离,或者为Tomcat编写并安装适当的init / systemd脚本(或来自众多示例中的任何一个)。例如,hereherehere ...

答案 1 :(得分:4)

如果您想要一个快速解决方案来运行Ansible的TTY中未连接的tomcat服务器,请使用以下命令:

- name: "Starting Apache server"
  command: nohup {{ apache_install_location }}/tomcat9/bin/startup.sh