Azure API Management service with external virtual network to Docker

Copper Contributor

I want to use the Azure API Management Service (AMS) to expose the API created with R/Plumber hosted in a Docker container and runs in an Ubuntu machine.


With `R/Plumber` I created some APIs that I want to protect. Then, I created a virtual machine on Azure with Ubuntu and installed Docker. The APIs are in a container that I published on the virtual machine by Docker. I can access them via internet.

On Azure I created an API Management service and added the APIs from the Swagger OpenAPI documentation.



I want to secure the APIs. I want to expose to the internet only the AMS. Then, my idea was to remove the public IP from the virtual machine and via a virtual network using the internal IPs to connect the API Management Service to the API with the internal IP (


So, I tried to set a Virtual Network. Clicked on the menu, then External and then on the row, I can select a network. In this virtual network, I have one `network interface` that is the one the virtual machine is using.




When I save the changes, I have to wait a while and then I receive an error


Failed to connect to management endpoint at for a service deployed in a virtual network. Make sure to follow guidance at

I read the following documentation but I can't understand how to do what I wanted


Also, I tried to add more Address space in the Virtual network.




One of them ( is delegate for the API Management.




Then, in the Network security group I added the port 3443.




From the API manager I can't reach the server with the internet IP (

Is there any how-to to use? Any advice? What are I doing wrong?

0 Replies