默认所有的sudoer都需要在tty是执行,由于jenkins Shell不是在tty上执行

先把默认tty关闭,然后打开只有jenkins不需要tty,其它都需要

#Defaults    requiretty

Defaults:apache !requiretty


然后为jenkins添加sudo,并设置只能执行的命令

jenkins ALL= NOPASSWD: /usr/bin/docker-compose

::

ALL表示全部的主机都可以把jenkins用户当成sudoer

 NOPASSWD:表示只有执行docker-compose时不需要输入密码,其它sudo命令都需要输入密码


Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐