Amazon web services 在AWS Elastic Beanstalk中使用sqlite db部署Flask应用程序

Amazon web services 在AWS Elastic Beanstalk中使用sqlite db部署Flask应用程序,amazon-web-services,sqlite,flask,Amazon Web Services,Sqlite,Flask,我有来自flask文档的教程应用程序,并为我的使用进行了修改 我能够部署我的flask应用程序,并通过container_命令(flask init db)创建数据库 但是当我试图从web浏览器向db写入内容时。它抛出了一个异常 “sqlite3.0错误:尝试写入只读数据库” 问题似乎是sqlite文件的写入权限。但它是在部署应用程序时创建的。任何帮助。 理想情况下,当您在自己的生产环境(而不是云)中部署时,sqlite是在venv/var/app instance文件夹中创建的。如何在AWS

我有来自flask文档的教程应用程序,并为我的使用进行了修改

我能够部署我的flask应用程序,并通过container_命令(flask init db)创建数据库

但是当我试图从web浏览器向db写入内容时。它抛出了一个异常

“sqlite3.0错误:尝试写入只读数据库”

问题似乎是sqlite文件的写入权限。但它是在部署应用程序时创建的。任何帮助。
理想情况下,当您在自己的生产环境(而不是云)中部署时,sqlite是在venv/var/app instance文件夹中创建的。如何在AWS EB中访问此文件。

对我来说,这似乎也是文件写入权限问题

以下是我将如何解决该问题:

  • 通过ssh登录到实例,授予该文件权限,然后查看它是否解决了问题
  • 如果它确实解决了这个问题,我会使用
    .ebextensions
希望这能帮助你前进

另请参阅下面的参考资料,其中显示了如何更改文件权限


参考资料:

谢谢。尽管我暂时对实例文件夹和sqlite都授予了完全权限。我不确定这是不是最好的办法。很高兴能帮上忙,我同意你的看法,给予充分的许可不是一个好主意。您应该为特定用户(我想不起来是apache还是wsgi用户)授予写权限。将其添加到您的待办事项列表中,以在将来修复它。祝你好运