I am trying to figure out the best (or just a) way to deploy docker images (coming from a build server) to Azure.
There are so many ways, and I can’t seem to find the right fit. There are a lot of orchestration frameworks (Docker Swarm, Service Fabric and Kubernetes), but at this stage it seems like a bit of an overkill to what we are trying to achieve.
My next thought was: let’s just create a web app and use this guide:
But I can’t figure out how to deploy this either (Azure Web App won’t work), and the docker deploy seems to be incorrect as well.
Basically (at this stage) I would like to have something like this:
MyApp.Authentication
MyApp.MyService1
MyApp.MyService2
Each project is a separate container and will be pushed to the private container registry separately (this is already configured & working). Now I need to somehow be able to deploy the generated docker images to some sort of azure thing. What would you recommend? At this stage I would take anything just to be able to create / replace a web app / container service for specific version of the container.
At this point the container version is selected like any other package during deployment, so you can deploy to ACI like it was a typical deployment target.
Thanks for the reply. Took me a bit of investigation, but here are the final scripts I am using:
az container create --resource-group #{MyAppResourceGroup} --name #{MyAppContainerName} --image #{MyAppRegistryUrl}/#{PackageName}:#{MyAppPackageVersion} --dns-name-label #{MyAppDnsLabel} --os-type #{MyAppOsType} --registry-username #{MyAppRegistryUsername} --registry-password #{MyAppRegistryPassword} --ip-address public --ports 80 443
az container show --resource-group #{MyAppResourceGroup} --name #{MyAppContainerName} --query "{FQDN:ipAddress.fqdn,ProvisioningState:provisioningState}" --out table
Then I can create multiple projects where I only have to define 1 or 2 variables (the rest is a library variable set) and the projects are ready to go.