最近,我要使用docker部署应用程序。我遇到了如何编写将在Linux上执行的启动脚本的问题。一个例子是作为研究员:
通常,我们会像这样创建超级用户:
iMac:mysite yetongxue$ python manage.py createsuperuser
Username (leave blank to use 'yetongxue'): root
Email address: example@qq.com
Password:
Password (again):
Superuser created successfully.
但是当使用docker部署应用程序时,我必须在脚本中编写此命令,该脚本将在docker容器启动后执行。如何在脚本中设置用户名,电子邮件和密码?谢谢!
#!/bin/bash
python manage.py createsuperuser
答案 0 :(得分:11)
您可以使用createsuperuser
管理命令,而不是provide a fixture。
您需要为auth.user
模型提供固定装置。对于密码,您可以通过Django shell生成一个
>>> from django.contrib.auth.hashers import make_password
>>> make_password('password')
您的最终灯具应如下所示:
[
{ "model": "auth.user",
"pk": 1,
"fields": {
"username": "admin",
"password": "<output of make_password()>"
"is_superuser": true,
"is_staff": true,
"is_active": true
}
}
]