AWS服务器中的部署自动化

时间:2015-08-01 11:07:45

标签: tomcat amazon-web-services deployment automation remote-server

必须在远程aws linux机器上运行的部署脚本。但是当tomcat启动时我遇到了问题,这里是代码和错误

1。sh /var/lib/apache-tomcat-7.0.55/bin/shutdown.sh

2。scp -i /tmp/Keys/*****.pem fedora@**.**.**.***:/opt/artifacts/appedo.war /var/lib/apache-tomcat-7.0.55/webapps

3。sh /var/lib/apache-tomcat-7.0.55/bin/startup.sh

在远程linux机器上运行:

ssh username@**.**.**.*** 'bash -s' < /opt/scripts/deploytest.sh

1&amp; 2工作正常。在运行第3时,错误是这样的:

touch: cannot touch ‘/var/lib/apache-tomcat-7.0.55/logs/catalina.out’: Permission denied
/var/lib/apache-tomcat-7.0.55/bin/catalina.sh: line 387: 
/var/lib/apache-tomcat-7.0.55/logs/catalina.out: Permission denied

请与我分享您的想法....(一种方式是给予catalina.out完全权限将解决问题,但至于我们的需要,它必须只有644权限)

1 个答案:

答案 0 :(得分:0)

我自己解决了这个问题。 目标机器sudoers文件改变了一点,如下所示

sudo visudo =&gt;评论默认值requiretty。

将第3行更改为&lt; =&gt; sudo sh /var/lib/apache-tomcat-7.0.55/bin/startup.sh,然后它运行正常。