Dans mon application Django avec la structure de dossiers standard, j'ai créé un fichier .ebignore avec le contenu suivant:
# SQLite
db.sqlite3
Le but est que, lorsque je déploie sur AWS EB, ma base de données SQLite ne soit pas écrasée. Je souhaite que la base de données SQLite de mon serveur reste inchangée lorsque je modifie mon application.
Cependant, après avoir déployé ("eb deploy") et visité l'URL / admin de mon site Web, l'erreur suivante s'affiche:
no such table: django_session
Quelle est la bonne façon de redéployer sur AWS sans écraser la base de données SQLite?
Réponses:
0 pour la réponse № 1Tu ne peux pas faire ça. Elastic Beanstalk, tout comme Heroku, n’a pas de stockage de fichiers local persistant. Votre instance est éphémère et peut être recyclée à tout moment, et les fichiers du système de fichiers ne persistent pas d'une instance à l'autre.
Vous pourrez peut-être résoudre ce problème en utilisant le stockage permanent de fichiers Elastic, mais ce serait une mauvaise idée. la latence serait probablement horrible. Utilisez une base de données appropriée via Amazon RDS.