Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 使用Azure函数的无服务器Django_Python_Django_Azure_Serverless Framework_Serverless - Fatal编程技术网

Python 使用Azure函数的无服务器Django

Python 使用Azure函数的无服务器Django,python,django,azure,serverless-framework,serverless,Python,Django,Azure,Serverless Framework,Serverless,我一直在寻找在Azure函数上的无服务器环境中运行Django的方法 假设我只能使用Azure服务,我想确保我们将要编写的Django代码应该是可移植的(可以部署到其他任何地方) 我一直在尝试几种方法,包括和,但是,我仍然无法让环境无错误地运行 我想确定的是,即使有人对运行Django serverless有一个可行的想法,并且对一个好的资源有一些指导?我不知道你到底想用Django做什么,但我实现了Azure函数来运行Django命令(即) 首先,我按照以下步骤在自定义docker Linux

我一直在寻找在Azure函数上的无服务器环境中运行Django的方法

假设我只能使用Azure服务,我想确保我们将要编写的Django代码应该是可移植的(可以部署到其他任何地方)

我一直在尝试几种方法,包括和,但是,我仍然无法让环境无错误地运行


我想确定的是,即使有人对运行Django serverless有一个可行的想法,并且对一个好的资源有一些指导?

我不知道你到底想用Django做什么,但我实现了Azure函数来运行Django命令(即)

首先,我按照以下步骤在自定义docker Linux容器中创建函数应用程序:

这包括通过位于my Django项目根目录下的Azure functions CLI和基于Docker映像的Docker容器设置函数应用程序
mcr.microsoft.com/azure functions/python:2.0-python3.7-slim

然后,我通过CLI创建了一个Azure函数:

func new——命名我的函数——模板“计时器触发器”

为了启动Django并调用自定义命令,我的函数代码如下所示

def main(mytimer: func.TimerRequest) -> None:
    utc_timestamp = datetime.datetime.utcnow().replace(
        tzinfo=datetime.timezone.utc).isoformat()

    if mytimer.past_due:
        logging.info('The timer is past due!')

    logging.info('Python timer trigger function started at %s', utc_timestamp)
    os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'mydjango.settings')
    django.setup()
    call_command('my_command')  # possible to add command params here
    logging.info('Successfully run my command')
重要的是

    os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'mydjango.settings')
    django.setup()
在函数代码中设置Django

也许这对你的目的也有帮助。如果你有任何问题,我也可以给你更多的细节