是否可以仅将更改的文件部署到AWS Elastic Beanstalk应用程序而不是上传我的整个源代码?

时间:2016-04-24 13:16:56

标签: git amazon-web-services elastic-beanstalk

我在AWS中设置了一个Elastic Beanstalk应用程序。

到目前为止,我已经通过AWS的Web界面部署了更新版本的源代码(ZIP文件)。

现在我的网站已上线,用户可以上传个人资料照片。问题是,当我部署我的网站的新版本时,我的所有源代码都将被新版本替换,并且所有用户图像都消失了......

那么是否有任何选项只提交已更改的文件而不是上传整个页面?

2 个答案:

答案 0 :(得分:0)

不,您必须使用存储解决方案(例如AWS S3)来存储图像文件。这样,无论何时(重新)部署应用程序,文件都不会消失,并且所有EC2实例都可以使用这些文件,因此您的应用程序可以自由扩展和缩小。

答案 1 :(得分:-1)

是。您可以使用format-patch生成差异,然后上传并将其应用到您的服务器上。

# generate the patch for the given last X commit
git format-patch HEAD~X

将文件上传到服务器后,将其应用到您的代码中。

如果您没有在远程服务器上安装git,那么它就是一个简单的Unix补丁而没有git apply

非常简单,您可以在这里看到一些例子:
http://www.cyberciti.biz/faq/appy-patch-file-using-patch-command/