默认所有的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命令都需要输入密码