Ansible - 在新终端窗口中启动Python Flask脚本

4

我有一个Flask应用程序,我希望使用Ansible部署并开始使用。我已经设置了我的playbook以安装所有必需的依赖项,但是我无法让Ansible启动我的应用程序。我尝试过commandshell,两者都可以启动Flask应用程序,但它们会阻止Ansible退出,并且Flask不会在自己的终端窗口中弹出,这使得视觉调试和查看Flask正在执行的操作变得困难。

#Current playbook; both command and shell act the same way
  tasks:
  - command: python3 /home/user/Desktop/Flask/app.py
  - shell: python3 /home/user/Desktop/Flask/app.py

问:如何让Ansible在自己的终端窗口中启动Flask脚本?


1个回答

3
如果您在此系统上安装了 gnu screen,则可以使用它来后台运行任务。我使用它以 deploy 用户的身份异步运行 shell 脚本,以便稍后登录并查看其运行情况。
- name: Invoke reset script
  command: /usr/bin/screen -d -m sudo -u deploy /usr/local/bin/do-reset.sh -i -y reset 
  async: True
  poll: 0
< p > -d -m 参数告诉 screen 以分离模式启动,asyncpoll 设置告诉 Ansible 将命令放到后台并忘记它。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接