AWS 服务器中的部署自动化

Deployment automation in AWS servers

必须在远程 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&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 个权限)

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

sudo visudo => 评论默认要求。

将第 3 行更改为 <=> sudo sh /var/lib/apache-tomcat-7.0.55/bin/startup.sh,然后它工作正常。