Supongamos que quieres hacer que el servicio
Docker dependa de una conexión VPN establecida
llamada guybrush, y que estás configurando un servidor
Ubuntu 16.04.
Para ello, necesitarás primero añadir una configuración para tu VPN, la cual
colocaremos en /etc/openvpn/guybrush.conf. No es el propósito de esta
entrada hablar de cómo configurar OpenVPN, así
que supondremos que ya sabes sacar eso.
Tan solo con colocar ahí ese fichero,
Systemd se dará cuenta
y nos creará el servicio openvpn@guybrush.service. Normalmente, al
arrancarlo nos creará una nueva interfaz de red llamada tun0.
Ahora
vamos a crear una extensión
a docker.service, y para eso crearemos el fichero
/etc/systemd/system/docker.service.d/guybrush.conf con este contenido:
[Unit] After=sys-devices-virtual-net-tun0.device Requires=openvpn@guybrush.service sys-devices-virtual-net-tun0.device
Esto añade estas configuraciones a la que traiga por defecto el servicio Docker,
y básicamente le dice que antes de arrancar Docker arranque la VPN
guybrush, y espere a tener tun0 disponible.