我建议添加一个新的管理命令,如果不存在用户,该命令将自动创建一个超级用户。
查看我在https://github.com/dkarchmer/aws-eb-docker-
django创建的小示例。特别是,请看我如何
python manage.py initadmin运行:
class Command(baseCommand): def handle(self, *args, **options): if Account.objects.count() == 0: for user in settings.ADMINS: username = user[0].replace(' ', '') email = user[1] password = 'admin' print('Creating account for %s (%s)' % (username, email)) admin = Account.objects.create_superuser(email=email, username=username, password=password) admin.is_active = True admin.is_admin = True admin.save() else: print('Admin accounts can only be initialized if no Accounts exist')(请参阅身份验证/管理/命令)。
您可以看到Dockerfile然后如何仅运行CMD到runserver.sh,该文件基本上可以运行
python manage.py migrate --noinputpython manage.py initadminpython manage.py runserver 0.0.0.0:8080
显然,这是假定管理员在服务器启动后立即更改密码。这可能对您来说不够好。



