The institution I work in intended to go with the Azure App Service with Docker containers, and Azure Container Registry fits the bill.
During the standard Azure DevOps pipeline, the institution built the container and then pushed the container directly to Azure Container Registry. Then, in the next stage of the same DevOps pipeline, the institution pulls the Docker image from the Azure App Service, which is already deployed to Azure Container Registry.
Overall, the Azure App Service posts the Docker images through its connection with the Azure Container Registry.
I'm working in a financial institution that has limitations to the type of service it can consume, even on the Azure cloud. There is a limited set of services, and Azure Container Registry is the only service approved by the security guy.
My main goal was to work independently from the container and the Azure App Service language that's already been predefined because when you deploy the application through the Azure App Service and you're working with REST API applications, there is a limited set of Java runtime compilers that can go and run on the Azure App Service, so the institution does not want to depend on the programming language from Microsoft. This is why the institution decided to go with containers, which is the only way forward.
With the Azure App Service and containers, Azure Container Registry is the only solution that can push and pull the Docker images because the configuration my institution has doesn't have access to the public internet, so my team cannot pull images randomly from different sources, even on-premise ones, so using Azure Container Registry is the only way the institution can inject images into the environment and resource groups.