问题

使用pm2管理jenkins, 直接启动bash script, 运行一些命令时会遇到tty不存在的错误

child_process.js:120
p.open(fd);
^ Error: ENOTTY: inappropriate ioctl for device, uv_pipe_open
at Object._forkChild (child_process.js:120:5)
at setupChildProcessIpcChannel (internal/bootstrap/pre_execution.js:75:30)
at prepareMainThreadExecution (internal/bootstrap/pre_execution.js:11:3)
at internal/main/run_main_module.js:11:1

这主要是因为pm2启动jenkins进程时并没有启用tty

解决方案

用js启动进程, 并且在spawn的时候设置tty配置

例子

let spawn = require("child_process").spawn;
spawn(
"/usr/bin/java",
["-jar", "/Applications/Jenkins/jenkins.war"],
{ stdio: [0, 1, 2] }
);

参考资料:  http://derpturkey.com/retain-tty-when-using-child_proces-spawn/

pm2启动jenkins不存在tty的问题的更多相关文章

  1. windows pm2 启动nodejs失败:Error: EBADF: bad file descriptor, uv_pipe_open

    windows下打开命令窗口,安装pm2:npm install pm2 -g pm2成功安装,在项目目录下用pm2启动服务:pm2 start index.js,结果启动失败,错误如下: .pm2\ ...

  2. 启动Jenkins

    启动Jenkins? 进入到Jenkins的war包所在的目录  ->CMD 到 Jenkins的war包所在的目录 输入: Java -jar jenkins.war 启动Jenkins服务n ...

  3. 启动jenkins服务错误

    背景 重新安装了jenkins,需要启动,使用的yum install安装的,启动jenkins的话只需要执行service jenkins start,但出了两个问题 1. 是提示找不到java 2 ...

  4. (2) Tomcat启动Jenkins

    Tomcat启动Jenkins 1. 下载Tomact,解压缩到指定目录. 2. 下载Jenkins.war文件,方到Tomact的WebApps下面即可. 3. 修改Tomcat的HTTP端口和默认 ...

  5. node.js中pm2启动应用出错

    在将公司的应用容器化时,遇到的问题. 之前,同事使用node.js 6版本运行,pm2启动js文件,一切正常. 但我一样将node.js 6版本安装,然后npm install pm2完成. 运行pm ...

  6. Jenkins - 安装并启动Jenkins

    1 - 关于Jenkins 构建流水线(build pipeline)工具Jenkins可以轻松地定义和管理各种各样的操作(构建.测试等),并将这些操作像管道pipe一样自由地进行组合,从而自动.流畅 ...

  7. 腾讯云启动jenkins

    首先配置后jdk环境 可参考:https://www.cnblogs.com/Uni-Hoang/p/12991686.html 下载jenkins的war包 在/usr/local/创建一个jenk ...

  8. 虚拟机启动jenkins,访问提示:该Jenkins实例似乎已离线

    ubuntu虚拟机使用java命令启动jenkins,本地访问提示:该Jenkins实例似乎已离线. https://www.cnblogs.com/du-hong/p/10655635.html 没 ...

  9. 启动Jenkins后无法访问,如何排错

    做IT工作,使用各种工具的时候,遇到错误都是一堆英文,对于英语不好的人,看到报错可能就会心烦,我刚开始就是这种状态.后来,遇到问题,首先复制报错信息到百度上搜索,没有人请教的时候,你不能坐等问题自己解 ...

随机推荐

  1. SMB溢出漏洞所需的SMB协议内容

    来一张wireshark抓下的SMB包,再解读一下. 一个包的内容有 网卡 IPV4 TCP NetBIOS SMB SMB header SMB Command: xxx Error class: ...

  2. http Content-Type 知多少

    前言 作为前端开发,工作中少不了与接口请求打交道.对于常见的content-type,也能说上来几个,感觉还算了解.直到有一天,我要在查看google的批量接口合并时发现Content-Type: m ...

  3. AM335X启动(转)

    AM335x启动   参考文件: 1.TI.Reference_Manual_1.pdf http://pan.baidu.com/s/1c1BJNtm 2.TI_AM335X.pdf http:// ...

  4. python urllib 库

    urllib模块中的方法 1.urllib.urlopen(url[,data[,proxies]]) 打开一个url的方法,返回一个文件对象,然后可以进行类似文件对象的操作.本例试着打开google ...

  5. SpringCloud学习目录

    Spring Cloud直接建立在Spring Boot的企业Java创新方法上,它通过实现经过验证的模式来简化分布式.微服务风格的体系结构,从而为您的微服务带来弹性.可靠性和协调. 以上来自spri ...

  6. Vue子页面给父页面传递数据

    子页面: <template> <div> <p>子组件</p> <button @click="sendMsg">传递 ...

  7. 删除office拥有多个都需要激活的授权信息

    首先确认office目录下存在“ospp.vbs”文件,可以搜索确认文件路径. 我的是在C:\Program Files\Microsoft Office\Office16  然后以管理员身份打开cm ...

  8. 四方定理(递归) --java

    四方定理 数论中有著名的四方定理:所有自然数至多只要用四个数的平方和就可以表示. 我们可以通过计算机验证其在有限范围的正确性. import java.*; import java.util.*; p ...

  9. ./configure && make && make install 编译安装和卸载 (Linux)

    ./configure && make && make install 编译安装和卸载 (Linux) 正常的编译安装/卸载:   源码的安装一般由3个步骤组成:配置( ...

  10. weblogic 内存配置

    修改weblogic 使用内存 修改位置:startWeblogic.sh 在最开头增加使用内存配置信息如下: 我的服务器配置 内存:32G   ,CPU:16  根据实际情况配置 #!/bin/sh ...