Azure Container Instances
(ACI) may be a good option as you suggest. These let you run a container directly on Azure, without having to manage a VM, with per-second billing for the time the container is used.
Although one of the demos on that blog mentions Kubernetes, the idea of ACI is that you can create a container through the Azure CLI with az container create
, just like on your local workstation with docker create
.
To create the container, you can use Azure CLI (az
command, see quick start docs) or Azure Cloud Shell.
You would need to create/run the container on a schedule from somewhere else - Azure Functions might be a good place to run the "container create" command from a scheduled function. This supports bash, PowerShell, and other languages - all running on Windows.
If you want to keep using Docker containers without running VMs or learning Kubernetes, this might be a good option.
Alternatively, you could move all your code into Azure Functions, but that's a bigger decision.
Update: Jan 2019 - Azure Logic Apps can be used to run scheduled tasks as well. This replaced Azure Scheduler in Jan 2022.