我已成功使用AWS Elastic Beanstalk创建了一个应用程序,并使用Git上传了该应用程序。
我要做的就是创建我的settings.php文件,一切都应该有效。
然而,当我使用SSH to Elastic Beanstalk instance中记录的方法通过SSH作为用户ec2-user连接时,我无法导航到webapp目录。这是ls -all
的输出drwxr-xr-x 4 root root 4096 Feb 10 16:21 .
dr-xr-xr-x 23 root root 4096 Feb 10 16:23 ..
drwx------ 3 ec2-user ec2-user 4096 Feb 10 16:41 ec2-user
drwx------ 2 webapp webapp 4096 Feb 10 16:21 webapp
当我尝试在那里导航时,我得到:
cd: webapp: Permission denied
我的问题是,我可以将webapp文件夹的所有权更改为ec2-user的所有权。如果我这样做,我会打破Elastic beanstalk吗?如果是这样,我有兴趣知道其他人如何实现我想要做的事情,这不会跳过设置文件的Git部署,这样我的本地机器上就可以与Amazon上的版本不同。
答案 0 :(得分:3)
更改所有者可能会破坏您的Elastic Beanstalk部署。但是,您可以将用户添加到webapps
组并递归更改文件夹上rw
的权限,以便webapps
组中的任何人都可以读取/写入该文件夹
chmod -R g+rw webapp
如果是这样,我有兴趣知道其他人是如何实现我的目标的 期待做,这不是跳过设置文件的Git部署所以 它在本地机器上可能与版本不同 在亚马逊上。
你能详细说明吗?什么设置文件?你的意思是'跳过'还是'不跳过'?
答案 1 :(得分:2)
ec2-user
的权限受到限制,可能与运行应用程序的用户不同。当您登录EC2实例时,使用Unix sudo
命令执行管理员任务:
$ sudo ls webapp
然后,您可以轻松查看设置的方式,并执行您喜欢的任何操作。请记住,如果重新创建实例,您执行的任何操作都可能会被撤消。因此,您可能需要使用.config
文件,如果您自动希望此文件出现在Elastic Beanstalk创建的任何新EC2节点上。