--- services: openvpn-server: build: context: . dockerfile: test/Dockerfile.server args: BASE_IMAGE: ${BASE_IMAGE:-} container_name: openvpn-server hostname: openvpn-server cap_add: - NET_ADMIN devices: - /dev/net/tun:/dev/net/tun sysctls: - net.ipv4.ip_forward=1 volumes: - shared-config:/shared networks: vpn-test: ipv4_address: 172.28.0.10 healthcheck: test: ["CMD", "pgrep", "openvpn"] interval: 5s timeout: 3s retries: 30 openvpn-client: build: context: . dockerfile: test/Dockerfile.client container_name: openvpn-client hostname: openvpn-client cap_add: - NET_ADMIN devices: - /dev/net/tun:/dev/net/tun volumes: - shared-config:/shared:ro networks: vpn-test: ipv4_address: 172.28.0.20 depends_on: openvpn-server: condition: service_healthy volumes: shared-config: networks: vpn-test: driver: bridge ipam: config: - subnet: 172.28.0.0/24