我在弹性beanstalk中托管了我的服务器端编码。我使用multer上传'upload'文件夹中的文件,这意味着使用api,客户端可以动态地在这个'upload'文件夹中存储图像或pdfs等。当我在ebs中托管.zip时,说有3个文件存储在uploads文件夹中。托管后会添加更多文件。现在,如果我更改代码并将代码部署到ebs,则会创建空上载文件夹。如果我下载以前的代码,我只收到托管时那里的3个文件。我无法取回代码托管后添加的文件。如何克服这个?
答案 0 :(得分:0)
在ElasticBeanstalk上托管应用程序的第一条规则是您的代码应该是无状态的。对于无状态,我的意思是它根本不应该依赖于机器,因为实例会根据扩展要求创建和关闭。
我所做的就是做你说的一切,把它上传到上传文件夹然后我把它存储在S3(或者如果实例终止它是安全的)。所以基本上uploads文件夹只是一个临时位置。
动态创建的内容不应该是代码库的一部分。
当您部署新版本时,无法获取丢失的数据,部署代码的目录将被删除,并在那里复制新版本。我相信它的/var/app/current/
。
每当您想要在将来处理上传时,您应该遵循: