feat: attach vector container to additional docker networks

Adds a new global `vector-networks` property on the logs plugin that takes a comma-separated list of Docker networks. When set, the rendered compose file declares each network plus `bridge` as external and joins them on the vector service, so `docker compose up` reconciles attachments on every `logs:vector-start`. When unset, the existing `network_mode: bridge` template is preserved unchanged. The value is validated against `docker network inspect` at set time, rejects the reserved `bridge` entry, and is surfaced in `dokku logs:report` via `--logs-vector-global-networks`.
This commit is contained in:
Jose Diaz-Gonzalez
2026-05-12 22:05:50 -04:00
parent b096d0f131
commit d00a7d741a
7 changed files with 262 additions and 10 deletions

View File

@@ -13,7 +13,15 @@ services:
org.label-schema.schema-version: "1.0"
org.label-schema.vendor: dokku
{{- if $.VectorNetworks }}
networks:
bridge: {}
{{- range $name := $.VectorNetworks }}
{{ $name }}: {}
{{- end }}
{{- else }}
network_mode: bridge
{{- end }}
restart: unless-stopped
@@ -21,3 +29,15 @@ services:
- "{{ $.DokkuLibRoot }}/data/logs:/etc/vector"
- "/var/run/docker.sock:/var/run/docker.sock:ro"
- "{{ $.DokkuLogsDir }}/apps:/var/log/dokku/apps"
{{- if $.VectorNetworks }}
networks:
bridge:
name: bridge
external: true
{{- range $name := $.VectorNetworks }}
{{ $name }}:
name: {{ $name }}
external: true
{{- end }}
{{- end }}