在 Azure 上计划执行 Python 脚本

Scheduled execution of Python script on Azure

我目前在 https://notebooks.azure.com/ 上有一个免费的 Azure Notebook 帐户,我想每 10 分钟自动执行一次托管在 Azure 上的 Python 脚本(或 Jupyter Notebook)。

有没有办法在免费的 Azure 笔记本帐户中执行此操作?

我知道网上描述的几种方法,例如使用 Azure WebJobs、Azure Functions、Azure IoT 等。然而,所有这些方法都要求我升级到 "Free" 帐户,该帐户实际上只在前 12 个月免费,所以我想尽可能避免这种情况。

免费的 Azure 帐户附带许多 'always free' 服务,其中包括 Azure Functions。

只要您保持在免费功能限制(目前每月 1,000,000 次请求)以内,您就无需支付任何费用。

https://azure.microsoft.com/en-us/free/free-account-faq/

据我所知,Microsoft Azure Notebooks 中没有任何关于 WebJobs for Azure WebApp or Jobs for Azure Databricks 作业的功能。因此,我尝试通过 Azure Notebooks Ubuntu 上的 crontab 触发 Python 脚本,但失败了,因为 cron 服务默认未启动且 Azure 不提供 nbuser 使用 sudo 启动 cron 服务的密码。

不过,我也试着写了一个Python脚本hello.py如下。

from datetime import datetime
import time
while(True):
    print(f"{datetime.now()} => Hello, world! ")
    time.sleep(10) // 10 seconds

而我运行在Azure Notebooks的Terminal里面,如下图,然后我关闭了终端页面,运行!tail -f ~/hello.log,好像没有被终止终端页面的关闭事件。

你可以这样试试。如果不是你想要的,我想在 Azure Notebooks 上是不可能的。