Necesito pasar el --network
Opción al comando de ejecución de la ventana acoplable en uno de mis pasos. He intentado configurar el corredor gitlab-ci con el network_mode
Opción, pero no funcionó
¿Hay alguna manera de agregar opciones al comando docker en gitlab-ci?
Aquí está mi config.toml
:
[[runners]]
name = "Docker Runner"
url = "https://gitlab.company.com"
token = "9621bf2aba8b979b"
executor = "docker"
[runners.docker]
tls_verify = false
image = "alpine:latest"
privileged = false
disable_cache = false
volumes = ["/var/run/docker.sock:/var/run/docker.sock", "/cache"]
network_mode = "dedicated"
shm_size = 0
Actualizar
dedicado está en mi lista de redes, intente con host, mismo resultado
NETWORK ID NAME DRIVER SCOPE
0ec4c3c2d4be bridge bridge local
977b613d726e dedicated bridge local
45a0fadc2ce7 host host local
9f7251c769ca none null local
Mi servicio de TI en la empresa agrega un complemento para verificar el argumento sobre el inicio del contenedor y obtuve AuthZPlugin.AuthZReq: Use of subnet "1.1.1.1/24" is forbidden
Es por eso que necesito agregar explícitamente --network dedicated
Respuestas
0 para la respuesta № 1network_mode
funciona para cualquier red conocida en el host, puede ponlos en una lista con docker network ls
.
dedicated
tiene que estar en esa lista para que funcione.
He hecho esto con éxito para el host
Red y puede confirmar que esto funciona.
0 para la respuesta № 2
Finalmente encontré una solución gracias a este enlace
Monté un gitlab-dind y lo uso para mi corredor definiendo la variable env -e DOCKER_HOST=tcp://gitlab-dind:2375
y también usar network_mode = "host"
Mi config.toml
Se ve como esto :
[[runners]]
name = "Runner"
url = "https://gitlab.company.com"
token = "ff10e2ae64be1a2f246f5f89e0bc63"
executor = "docker"
[runners.docker]
host = "tcp://gitlab-dind:2375"
tls_verify = false
image = "docker:latest"
privileged = true
disable_cache = false
volumes = ["/cache"]
network_mode = "host"
shm_size = 0
[runners.cache]