supervisor的command执行两条命令
如下supervisor的进程的comand配置参数只能写一个命令
1、要执行多条命令,可以写个sh文件包含多条命令,然后sh -x xxxx.sh,但这样又多了一个文件,
2、把所有命令放在字符串,然后用eval来执行,这样在shell窗口可以执行,但放在supervisor报找不到eval命令。比如:
command = eval "python -u app/utils_ydf/git_client.py&&gunicorn -w 9 -k gevent --bind 0.0.0.0:5402 app.apis.elong.nearby_hotel:app" 这样不能在supervisor运行。
3、解决方式是使用如下:
command = /bin/bash -c "python -u app/utils_ydf/git_client.py&&gunicorn -w 9 -k gevent --bind 0.0.0.0:5402 app.apis.elong.nearby_hotel:app" 这样就可以了。 这样每次在启动或重启进程时候,会先拉去git再部署,部署速度比jenkens的构建速度快,状态也比jenkens查看方便。
这样运行是要注意下环境变量问题,比如用python的git包时候,读取不了git的路径居然,最后是在配置的enviroment设置GIT_PYTHON_GIT_EXECUTABLE="/usr/bin/git才解决,但单独运行又能读取git。 4、command用bash -c 启动 python xx.py一定要设置如下为true,否则stop不了真正的python/java进程,因为bash命令进程和真正的python进程不是同一个。 如果是command=python xx.py这样,并且程序里面没有使用多进程,则无需设置以下。
stopasgroup = true
killasgroup = true
supervisor的command执行两条命令的更多相关文章
- 如何用 npm 同时执行两条监听命令
在日常项目中启动项目 需要启动项目可能需要不止一条命令 这就很麻烦 要开启两个bash 很麻烦 终于找到了比较好的解决方案 例如我的: npm run dev //启动项目项目 npm run jso ...
- ssh 执行多条命令包含awk的用法
格式:ssh user@ip command 单条命令:ssh user@ip command1 多条命令:ssh user@ip "command1;command2" 不加双引 ...
- linux系统执行多条命令,linux系统执行复合命令
在操作linux系统的时候,你是否遇到过打开一个目录,然后查看一个文件里面的内容. 我们可以使用命令 cd + 目录 cat + 文件名,我们需要输入两次,点击两次 enter 有没有 ...
- Linux下间隔多少秒 (即以秒为单位) 去执行某条命令或某个shell脚本的操作方法【转】
在日常运维工作中, 经常会碰到以秒为单位去定时执行某些命令或监控脚本的需求. 说到定时任务就要用到crontab,通常来说,crontab的最小单位是分钟级别,要想实现秒级别的定时任务,就要进行特殊设 ...
- Django orm 中 python manage.py makemigrations 和 python manage.py migrate 这两条命令用途
生成一个临时文件 python manage.py makemigrations 这时其实是在该app下建立 migrations目录,并记录下你所有的关于modes.py的改动,比如0001_ini ...
- [教程]K8Cscan调用外部程序(Win/Linux批量上控/执行多条命令/保存结果)
0x000 调用原理 Cscan调用外部程序有两种方式,一是编写DLL,二是配置文件 编写DLL文件对于不懂编程的人来说可能会很难(虽然支持各语言) 由于考虑到很多人不会编程或会编程又急用无法短时间转 ...
- 【转】使用shell登录远程服务器执行多条命令,ssh登录之后执行脚本文件
原文:https://blog.csdn.net/qq_36622490/article/details/100773589 这个需求主要是我在jenkins中pipeline的代码里,需要使用she ...
- Linux重复执行上条命令
Linux系统下Shell重复执行上条命令的 4 种方法: 1.使用上方向键,并回车执行.2.按 !! 并回车执行.3.输入 !-1 并回车执行.4.按 Ctrl+P 并回车执行.
- PowerShell一次执行多条命令
PowerShell一次执行多条命令语句 使用CMD之后换到PS之后想一次执行多条命令会很不习惯,因为原来的&&语句连接符已经不能用了. 在各种搜索后没有发现网上有说明这个的.无奈只能 ...
随机推荐
- 用Canvas做视频拼图
声明:本文为原创文章,如需转载,请注明来源WAxes,谢谢! 几天前同事给我看了一个特效,是一个拼图游戏,不同的是,拼图里的是动画.他让我看下做个DEMO,于是就自己整了一会,也确实不难.用canva ...
- 打包maven后出现jar包丢失
http://blog.csdn.net/asdfsfsdgdfgh/article/details/51373222
- TCP/IP通信协议
TCP/IP 是用于 Internet 的通信协议. 一.什么是 TCP/IP 1.TPC/IP 是供已连接 Internet 的计算机进行通信的协议: 2.TCP(Transmission Cont ...
- CocosCreator的节点显示和隐藏
隐藏和显示有两种方式: 1.禁止节点node的运行,方法是x.node.active=false[此时隐藏了节点,且节点不再运行];恢复节点正常运行,x.node.active=true;或者使用x. ...
- JSON Web Token(JWT)机制
JSON Web Token(JWT)机制 JWT是一种紧凑且自包含的,用于在多方传递JSON对象的技术.传递的数据可以使用数字签名增加其安全行.可以使用HMAC加密算法或RSA公钥/私钥加密方式. ...
- C#编程(八十三)---------- 程序集的含义
程序集的含义 一.程序集是包含一个或多个类型定义文件和资源文件的集合.它允许我们分析可重用类型的逻辑表示和物理表示. 相当于你定义了一个项目XXProject,项目存在很多文件(类,窗体,接口,资源等 ...
- 如何在生产环境使用Btrace进行调试
占小狼 转载请注明原创出处,谢谢! 背景 记得前几天有人问我:在生产环境中可能经常遇到各种问题,你们一般是如何进行调试的? 很惭愧,没有经验.因为平时碰不到生产环境的服务器,定位问题需要各种数据,所以 ...
- [leetcode]Permutation Sequence @ Python
原题地址:https://oj.leetcode.com/submissions/detail/5341904/ 题意: The set [1,2,3,…,n] contains a total of ...
- ThinikPhp 将数据库模型的增、删、改操作写入日志
Thinkphp中的模型可以对数据库字段进行验证规则的设置和设置一些字段的默认值(比如字段为当前时间)以及在操作数据时的的一些回调方法等 基本上每一个模型都需要设置一些验证规则和字段默认值的设置, ...
- 微软BI 之SSIS 系列 - 理解Data Flow Task 中的同步与异步, 阻塞,半阻塞和全阻塞以及Buffer 缓存概念
开篇介绍 在 SSIS Dataflow 数据流中的组件可以分为 Synchronous 同步和 Asynchronous 异步这两种类型. 同步与异步 Synchronous and Asynchr ...