Linter Dockerfile en línea — Reglas DL estilo Hadolint

Lint Dockerfile con sintaxis + ~26 reglas DL Hadolint. ShellCheck en RUN no incluido.

Cargando…
Linter Dockerfile — comprobaciones DL estilo Hadolint
Detecta tags latest, ADD vs COPY, USER faltante y otros problemas de alto valor antes de que CI ejecute la CLI completa de Hadolint.

Notas para desarrolladores

• Las reglas DL se ejecutan sobre dockerfile-ast; los errores de sintaxis de dockerfile-utils son independientes. • Las reglas ShellCheck (SC*) quedan fuera de alcance en v1. • Las severidades info vs warning siguen nuestro mapeo DL. • Fija las imágenes base tras corregir advertencias DL3006/DL3007.

Cuándo elegir esta opción

• Lint rápido en un Dockerfile pegado en un comentario de revisión. • Formar a juniors con códigos DL oficiales y enlaces wiki. • Comprobación previa antes de enviar a un pipeline de registry. • Comparar con la CLI Hadolint en archivos pequeños.

Ejemplos prácticos

Tag latest + ADD + apt sin fijar

Entrada Dockerfile

FROM ubuntu:latest MAINTAINER [email protected] RUN apt-get update && apt-get install curl RUN echo "starting build" ADD app.tar.gz /app/ WORKDIR relative EXPOSE 80 CMD echo start

Resaltados de lint

Advertencias: DL3007 (latest), DL4000 (MAINTAINER), DL3020 (ADD), DL3008/DL3014/DL3015 (apt), DL3000 (WORKDIR relativo), DL4001 (sin USER), DL3025 (CMD shell).

Fragmento mejorado estilo producción

Entrada Dockerfile

FROM ubuntu:22.04 RUN apt-get update \ && DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends curl=7.81.0-1 \ && rm -rf /var/lib/apt/lists/* COPY --chown=app:app src /app/ USER app WORKDIR /app CMD ["./server"]

Resaltados de lint

Menos advertencias DL — apt fijado, USER no root, CMD JSON, COPY en lugar de ADD.

Explorar herramientas DevOps relacionadas

Formatea primero con format Dockerfile. Stacks Compose: validate Docker Compose.

FAQ del linter Dockerfile

Reglas DL sin ShellCheck

¿Es Hadolint completo?

No — ~26 reglas DL más comprobaciones de sintaxis. ShellCheck dentro de RUN no está incluido en v1.

¿Por qué códigos DL?

Coinciden con el wiki oficial de Hadolint para que puedas comparar con CI y aprender la remediación.

¿Errores vs advertencias?

Los problemas de sintaxis de dockerfile-utils son errores. Las reglas DL son en su mayoría advertencias o info.

DevOps e Infra

Formato, validación y minificación de Terraform HCL, formato y lint de Dockerfile, validación de Docker Compose y .env.

Explorar otras categorías de herramientas

Minificar

Reduce código y assets para producción — minifica JavaScript, CSS, HTML, JSON y XML antes de gzip o un despliegue CDN.

Embellecer

Haz el código legible con una indentación coherente — embellece JavaScript, CSS, TypeScript, SCSS, LESS, Markdown, GraphQL, SQL, YAML y más en tu navegador.

Desminificar

Expande código minificado o comprimido — desminifica JavaScript, CSS, TypeScript, SCSS, LESS, SQL, YAML y otros formatos al depurar o revisar.

Conversión

Transforma datos entre JSON, YAML, XML y CSV en local — sin subidas a un servidor.

Preprocesadores CSS

Compila SCSS o LESS a CSS estándar en el navegador — combínalo con embellecer o minificar para un flujo de hoja de estilos completo.

Herramientas JSON

Valida, formatea, compara y explora payloads JSON — complementarias a minificadores y convertidores.

Herramientas SVG

Previsualiza, optimiza con SVGO, exporta Data URI, redimensiona, embellece, convierte a JSX y valida SVG — todo en tu navegador.

CI/CD

GitHub Actions y GitLab CI — formatear YAML y comprobar la estructura de workflows/jobs en el navegador.

Logs y observabilidad

JSON/NDJSON línea a línea y access logs de Nginx/Apache — formato, filtro, validación y CSV/TSV.

Kubernetes

Manifiestos multi-doc, validación estructural, starters Ingress/Deployment y formato de values de Helm.

Red / IP

CIDR, subredes y ayudas IPv4/IPv6 — en tu navegador.

Seguridad y tokens

JWKS, certificados X.509 y escaneo de secretos — en local en el navegador.

API y esquemas

Herramientas OpenAPI para formatear, validar y analizar tus specs.

Codificación

Codifica o decodifica Base64, componentes URL y entidades HTML — solo en el cliente.

Utilidades para desarrolladores

Timestamps, UUID, ULID, Nanoid, cron, contraseñas, regex, slugify, bases numéricas, mayúsculas, diff de texto y chmod — todo en el cliente.

Texto y Markdown

Cuenta palabras, genera TOC Markdown y limpia listas de líneas — todo en tu navegador.

IA y LLM

Conteo de tokens, estimación de costes y ajuste a la ventana de contexto — 100 % en el navegador.

Datos de prueba

Valores de campo sintéticos para fixtures y seed de BD — primero números de teléfono en rangos reservados.

Serialización

Serializa y deserializa estructuras PHP junto a los flujos JSON.