Multiple containers and macvlan

Hello all,

I’m fairly new to Docker, but learning pretty quickly that it is an extremely powerful tool for doing what I’d like to do. However, I’m still figuring out networking with Docker and am getting stuck trying to figure out how to accomplish the following:

1.) Run multiple web-facing applications on a server, each on their own container.
2.) Each container using the macvlan driver for networking to communicate only on a specific NIC allocated to a different subnet with a fixed IP for application access by the user.
3.) The container too should be able to access another container I’ve created to host a database for the application, but that database container is not internet facing, just so that the application container can talk to it to store application data.
4.) If possible, I’d like the aforementioned database container able to store data from the other application containers.

In essence, I’d like to create a bunch of web-facing application containers on separate subnets that use a common “back-end” database container that is not web-facing for isolation/security.

If anyone could give me any clues on how to do this with Docker’s networking features or point me in the right direction, I’d appreciate it!

Incidentally I’m doing this using Docker 18.06.1-ce on Ubuntu 16.04 (running within VMware).

This is exactly the issue I’m running into.
I have an app with containers for nginx, db and the app itself. All three containers are connect to the same network. Everything is working fine.
But I have no idea how to use this with macvlan to get a dedicated IP and hostname for the app.

I would appreciate any help.

Thanks a lot