SlimToolkit (Slim) inspecciona, minimiza y refuerza imágenes de contenedor existentes sin cambiar el Dockerfile ni el flujo de trabajo.
Tecnativa/docker-socket-proxy
Un proxy HAProxy centrado en la seguridad que se interpone entre el socket de Docker y los servicios, y permite autorizar o bloquear secciones específicas de la API de Docker mediante variables de entorno.
- Estrellas
- 2,850
- Forks
- 211
- Issues abiertos
- 57
- Último commit
- hace 2 meses
¿Qué es?
Docker Socket Proxy se sitúa entre un servicio y el socket de Docker, y filtra qué solicitudes a la API de Docker se aceptan. Montar el socket sin restricciones en un contenedor equivale, en la práctica, a otorgar acceso root al host, aunque algunos servicios lo necesitan para reaccionar a eventos o administrar contenedores. Este proxy permite exponer únicamente las partes de la API que necesita cada servicio.
El proxy se basa en la imagen de HAProxy sobre Alpine e incluye un archivo de configuración pequeño. El acceso a cada sección de la API se controla con una variable de entorno: se establece en 1 para permitirlo o en 0 para revocarlo. Las solicitudes a secciones bloqueadas reciben una respuesta HTTP 403. De forma predeterminada, se permiten Events, ping y version, mientras que se bloquean secciones críticas para la seguridad, como AUTH y SECRETS, y las operaciones de escritura mediante POST.
La imagen no incluye TLS y está diseñada para ejecutarse en una red privada de Docker, no para exponerse públicamente. Permite configurar la ruta del socket mediante SOCKET_PATH, para sistemas como balenaOS, y definir LOG_LEVEL. Admite varias versiones de la API de Docker y las imágenes se publican en Docker Hub y GitHub Container Registry.
Funciones clave
- 01Permite o bloquea secciones de la API de Docker mediante variables de entorno específicas para cada sección.
- 02Devuelve HTTP 403 para las solicitudes bloqueadas.
- 03Permite limitar el proxy a acceso de solo lectura deshabilitando POST.
- 04Admite una ruta de socket personalizada mediante SOCKET_PATH.
- 05Está basado en Alpine y HAProxy, con un archivo de configuración pequeño.
- 06Admite varias versiones de la API de Docker, de la 1.27 a la 1.51.
Casos de uso
- Dar a un contenedor de monitoreo o de proxy inverso acceso de solo lectura a los eventos de los contenedores.
- Limitar una herramienta de CI o automatización para que no pueda ejecutar operaciones privilegiadas en el host.
- Exponer únicamente las secciones de la API de Docker que necesita una herramienta de descubrimiento de servicios como Traefik.
Inicio rápido
- 1
Ejecuta el contenedor proxy con acceso al Docker socket
docker container run -d --privileged --name dockerproxy -v /var/run/docker.sock:/var/run/docker.sock -p 127.0.0.1:2375:2375 tecnativa/docker-socket-proxy - 2
Configura tu cliente Docker local para que use el proxy
export DOCKER_HOST=tcp://localhost:2375 - 3
Comprueba la conexión con docker version
docker version
Antes de usarlo
- Según el README, el contenedor debe ejecutarse con --privileged para conectarse al Docker socket.
- La imagen no admite TLS, por lo que el tráfico se transmite mediante HTTP sin cifrar y debe mantenerse en una red restringida.
- El acceso a cada sección de la API de Docker está desactivado de forma predeterminada en las áreas críticas para la seguridad y debe concederse de forma deliberada.
En colecciones
Temas
Preguntas frecuentes
- ¿Qué es docker-socket-proxy?
- Un proxy HAProxy centrado en la seguridad que se interpone entre el socket de Docker y los servicios, y permite autorizar o bloquear secciones específicas de la API de Docker mediante variables de entorno. Docker Socket Proxy se sitúa entre un servicio y el socket de Docker, y filtra qué solicitudes a la API de Docker se aceptan. Montar el socket sin restricciones en un contenedor equivale, en la práctica, a otorgar acceso root al host, aunque algunos servicios lo necesitan para reaccionar a eventos o administrar contenedores. Este proxy permite exponer únicamente las partes de la API que necesita cada servicio.
- ¿docker-socket-proxy es gratuito? ¿Qué licencia tiene?
- docker-socket-proxy es open source bajo la licencia Apache-2.0. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿docker-socket-proxy sigue mantenido?
- Actualizado en los últimos 6 meses. El último commit de docker-socket-proxy fue el 31 ago 2026.
- ¿Para qué puedo usar docker-socket-proxy?
- Dar a un contenedor de monitoreo o de proxy inverso acceso de solo lectura a los eventos de los contenedores. Limitar una herramienta de CI o automatización para que no pueda ejecutar operaciones privilegiadas en el host. Exponer únicamente las secciones de la API de Docker que necesita una herramienta de descubrimiento de servicios como Traefik.
- ¿Cómo se instala docker-socket-proxy?
- Ejecuta el contenedor proxy con acceso al Docker socket: docker container run -d --privileged --name dockerproxy -v /var/run/docker.sock:/var/run/docker.sock -p 127.0.0.1:2375:2375 tecnativa/docker-socket-proxy Configura tu cliente Docker local para que use el proxy: export DOCKER_HOST=tcp://localhost:2375 Comprueba la conexión con docker version: docker version
- ¿Dónde consigo docker-socket-proxy?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/Tecnativa/docker-socket-proxy
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Aplicación gráfica de escritorio para crear, ejecutar y administrar contenedores y Kubernetes localmente, basada en Podman y otros motores de contenedores.
Registro de contenedores cloud native de código abierto que almacena, firma y analiza imágenes y charts de Helm, con RBAC y replicación.
Colección de aplicaciones populares de código abierto en imágenes de Docker listas para ejecutar y reforzadas, mantenidas por Bitnami.
Proxy HTTP interactivo con capacidad para interceptar TLS e interfaces de consola, línea de comandos y web para inspeccionar tráfico HTTP/1, HTTP/2 y WebSocket.
Una pasarela local de privacidad que oculta datos sensibles en los prompts enviados a API de LLM y restaura los valores originales en las respuestas en streaming.