Skip to content

Automated Dependency Updates for Dockerfile

Categories: docker

Renovate supports updating Dockerfile dependencies.

File Matching

By default, Renovate will check any files matching any of the following regular expressions:

(^|/|\.)([Dd]ocker|[Cc]ontainer)file$
(^|/)([Dd]ocker|[Cc]ontainer)file[^/]*$

For details on how to extend a manager's fileMatch value, please follow this link.

Supported datasources

This manager supports extracting the following datasources: docker.

Default config

{
  "fileMatch": [
    "(^|/|\\.)([Dd]ocker|[Cc]ontainer)file$",
    "(^|/)([Dd]ocker|[Cc]ontainer)file[^/]*$"
  ]
}

Additional Information

Extracts image references in a Dockerfile and/or Containerfile.

Renovate's managers does not understand versioning, that's up to Renovate's versioning modules. The default docker versioning for container image datasources treats suffixes as "compatibility", for example: -alpine. Many container images are not SemVer compliant because they use such suffixes in their tags.

If Renovate does not update your container images correctly, you may need to tell Renovate what versioning it should use. For example, if you know that an image follows SemVer, you can tell Renovate to use "semver" versioning for that image:

{
  "packageRules": [
    {
      "matchDatasources": ["docker"],
      "matchPackageNames": ["whitesource/renovate"],
      "versioning": "semver"
    }
  ]
}

Read Renovate's Docker Versioning docs to learn more.

Open items

The below list of features and bugs were current when this page was generated on April 24, 2024.

Feature requests

  • Dockerfile FROM version pinning support #1027

Bug reports

  • docker: Replacement causes existing dependencies to use wrong digest #20304