gpt4 book ai didi

bash - Shell 命令手动工作,不使用 Ansible

转载 作者:行者123 更新时间:2023-11-28 22:24:02 25 4
gpt4 key购买 nike

我正在玩 Ansible(仍在学习),但遇到了一个我想不出解决方案的问题。

我正在尝试使用 Ansible 在远程服务器上安装和启动 Tomcat。

安装正常,但最后一步激活 Tomcat 服务器失败。

如果我手动启动 startup.sh 脚本(如 su -),使用以下命令:bash/opt/tomcat/startup.sh,我可以看到tomcat 主页。

使用我写的ansible playbook,虽然ansible没有报错,但是看不到tomcat主页。

这是我正在运行的任务:

   - name: Launch Tomcat
command: bash /opt/tomcat/startup.sh
become: true

我尝试添加 become_user: rootbecome_method: sudo 但没有成功。

我认为这可能与 ansible 处理 become: true 的方式有关,但我不确定。

最佳答案

您是否也尝试过使用 shell -模块而不是命令模块?

With the Command module the command will be executed without being proceeded through a shell. As a consequence some variables like $HOME are not available. And also stream operations like <, >, | and & will not work.

The Shell module runs a command through a shell, by default /bin/sh. This can be changed with the option executable. Piping and redirection are here therefor available.(Source: https://blog.confirm.ch/ansible-modules-shell-vs-command/)

关于bash - Shell 命令手动工作,不使用 Ansible,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56802340/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com