【发布时间】:2019-11-30 00:08:19
【问题描述】:
我有一个多容器应用程序,我需要每天在特定时间运行两次,每次运行大约 30 分钟。为了节省成本,我想:
- 在 Microsoft Azure 上打开 Linux VM
- 运行一个运行
docker-compose up -d的脚本,等待30分钟,然后调用docker-compose stop - 关闭虚拟机
我希望这能在 cron 计划中自动发生。
到目前为止,我还没有找到任何可以做到这一切的 Azure 解决方案。 Azure 自动化允许你打开/关闭 VM,但它不允许你在打开它后在其上运行 sh 脚本。 Azure Logic 应用程序允许您按计划启动容器,但不能使用 docker-compose。
关于如何以不涉及我拥有始终开启的 VM 的方式完成此任务有什么想法吗?
【问题讨论】:
-
您是否尝试过在函数应用程序中执行此操作?它是无服务器的,您只需为运行时付费。我从未将它用于此目的,但可能值得研究。
-
从您的本地网络运行脚本,为您自动执行此操作。您甚至可以创建虚拟机并在完成后将其销毁。由于我使用ansible 自动化基础设施,这就是我将使用的(因为它具有可与azure 和docker 一起使用的模块)。但是你有tons of other choices。
-
嗨@adobles96,怎么样?您的问题解决了吗?
标签: azure docker cron docker-compose virtual-machine