Django Zappa部署的帮助程序

zappa-django-utils的Python项目详细描述


Zappa Django实用程序

PyPISlackGun.ioPatreon

使django应用程序的Zappa部署稍微容易一些的小实用程序。

这个项目的灵感来自埃德加·罗曼的Zappa Django Guide

安装

通过pip

安装
$ pip install zappa-django-utils

添加到已安装的应用程序:

INSTALLED_APPS += ('zappa_django_utils',)

用法

使用支持s3的数据库引擎

zdu包含使用s3sqlite,即S3-synced SQLite database作为django数据库引擎的功能。

这将给并发写入的应用程序带来问题**,但对于没有并发写入的高读取应用程序(如cmse),它的扩展性非常好,而且比aws rds便宜几个数量级。

**并发写操作通常会丢失,并且不会显示在并发读卡器中。这是因为每个请求的数据库都是在s3存储和lambda实例之间传输的。

django设置和命令

DATABASES={'default':{'ENGINE':'zappa_django_utils.db.backends.s3sqlite','NAME':'sqlite.db','BUCKET':'your-db-bucket'}}

还有…就是这样!由于sqlite将数据库保存在一个文件中,因此您将希望使其尽可能小并对其进行碎片整理。偶尔执行数据库真空是很好的,特别是在删除或更新数据之后。有一个命令可以清空数据库:

zappa manage [instance] s3sqlite_vacuum

创建Postgres数据库

设置好rds、vpc/子网/安全组以及DATABASES设置后,可以使用以下命令创建数据库:

$ zappa manage <stage> create_pg_db

那你就准备好了python manage.py makemigrationszappa update; zappa manage migrate

创建默认管理员用户

您可能需要一个默认用户来管理您的应用程序,因此您现在可以:

$ zappa manage <stage> create_admin_user

或者您可以传递一些参数:

$ zappa manage <stage> create_admin_user one two three

这将在内部呼叫:

User.objects.create_superuser('one','two','three')

现在登录并立即更改管理员用户的电子邮件和密码。

创建/删除Postgres架构

您可以使用:

创建Postgres schema
$ zappa manage create_pg_schema

放在下面:

$ zappa manage drop_pg_schema

许可证

(c)2017年,Rich Jones,麻省理工学院执照

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java Jetty是否有请求缓存?   数组中的java 2值与我的数据帧中的2列对应   对象序列化期间的java DbUtils类型转换问题   java根面板中不显示所有单独的面板   java通过代理或SSH隧道连接Hbase API   java困惑:与经典MVC控制器相比,JSF2中bean的角色   java在我的Triangle类中“找不到符号错误”   java在Android中设置从路径到自定义按钮的图像   java不绕轨道旋转椭圆   AES在socket上搞砸了序列化/反序列化。无效的流标头。JAVA   java在数组中搜索term和if语句   线程“main”java中出现异常。util。正则表达式。PatternSyntaxException:在索引0附近悬挂元字符“*”*   Websphere上的java Google反射无法打开url连接   java为什么inc/dec频道什么都不做?   java KeyListener无法访问keyPressed方法