Problem
The deprecated MAINTAINER instruction appears in this Dockerfile. While builds may still work, the instruction is legacy syntax and creates inconsistent metadata practices across modern container tooling.
Description
MAINTAINER was deprecated in favor of labels. Current image workflows depend on structured metadata for automation, policy checks, and SBOM-related pipelines. When maintainership data is stored in deprecated syntax, teams lose consistency with OCI-style metadata and make policy enforcement harder.
This issue usually surfaces during base image upgrades, lint adoption, or security audits. A mixed style (some images using MAINTAINER, others using LABEL) increases maintenance overhead and slows CI standardization. Using labels also keeps author and ownership fields extensible, so additional metadata can be added without changing instruction semantics.
Related rules: missing or latest version tag, multiple CMD or ENTRYPOINT instructions, JSON notation for CMD and ENTRYPOINT.
Solution
Replace MAINTAINER with a label such as org.opencontainers.image.authors. Keep this metadata in a consistent label format across repositories so lint rules, security scanners, and release automation can parse it reliably.
Problematic code
FROM ubuntu:20.04
USER nobody
MAINTAINER John Doe <[email protected]>Verified code
FROM ubuntu:20.04
USER nobody
LABEL org.opencontainers.image.authors="John Doe <[email protected]>"