V mojej aplikácii django so štandardnou štruktúrou priečinkov som vytvoril súbor .ebignore s nasledujúcim obsahom:
# SQLite
db.sqlite3
Účelom je, že keď nasadím do AWS EB, databáza SQLite sa mi nepodarí prepísať. Chcem zachovať databázu SQLite na mojom serveri bez zmeny, keď upravím svoju aplikáciu.
Po nasadení ("eb deploy") a navštívte adresu / admin webovej stránky mojich webových stránok, dostanem nasledujúcu chybu:
no such table: django_session
Aký je správny spôsob, ako znovu nasadiť do AWS bez prepísania databázy SQLite?
odpovede:
0 pre odpoveď č. 1Nemôžete to urobiť. Elastic Beanstalk, rovnako ako Heroku, nemá trvalé lokálne ukladanie súborov. Vaša inštancia je pominuteľná a môže sa kedykoľvek recyklovať a súbory v súborovom systéme nepretrvávajú v rôznych prípadoch.
Možno to môžete vyriešiť použitím pretrvávajúceho ukladania súborov Elastic File, ale to by bol zlý nápad; latencia by bola pravdepodobne hrozná. Použite vhodnú databázu prostredníctvom služby Amazon RDS.