Skip to main content

pindock

Pin and update Docker image digests in Dockerfiles and compose files

PyPI: Version AUR: version GitHub: Release Docker: ghcr CI: Main CI: Coverage

InstallationUsagePre-commit

Installation

# PyPI
uv tool install pindock

# AUR
yay -S pindock-bin

# Docker
docker pull ghcr.io/deadnews/pindock

Usage

Usage: pindock <command> [flags]

Pin and update Docker image digests.

Commands:
  run      Pin unpinned image digests.
  check    Verify all images are pinned.

run flags:
  -C, --dir=.      Directory to scan.
  -u, --update     Also update tags and pinned digests to latest.
  -v, --verbose    Show all images, including pinned.

check flags:
  -C, --dir=.      Directory to scan.
  -u, --update     Also check tags and pinned digests for updates.
  -v, --verbose    Show all images, including pinned.
  • When no files are given, pindock auto-discovers files recursively.
  • latest and untagged images are pinned to the version tag pointing at the same digest (2.0.1 preferred over 2.0 and 2).
  • --update never moves a version tag past the version latest points to.
  • Prerelease tags (-rc, -alpha, -beta) update to the newest stable release once one is available; until then they follow their prerelease stream.

Supported files

  • Dockerfile, Containerfile (and variants like Dockerfile.dev, *.dockerfile)
  • compose*.yml, docker-compose*.yml (and .yaml)

Supported instructions

Dockerfile Compose
FROM [--platform=...] image:tag[@digest] [AS name] image: image:tag[@digest]
COPY --from=image:tag[@digest] ...
RUN --mount=from=image:tag[@digest],... ...

Authentication

Uses existing Docker credentials. If you can docker pull, pindock works too.

Pre-commit

repos:
  - repo: https://github.com/deadnews/pindock
    rev: v1.0.0
    hooks:
      - id: pindock
      - id: pindock-check

      # example with args
      - id: pindock-check
        args: [--update, --verbose]

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

pindock-1.1.2-py3-none-win_arm64.whl (3.9 MB view details)

Uploaded Python 3Windows ARM64

pindock-1.1.2-py3-none-win_amd64.whl (4.4 MB view details)

Uploaded Python 3Windows x86-64

pindock-1.1.2-py3-none-musllinux_1_2_x86_64.whl (4.3 MB view details)

Uploaded Python 3musllinux: musl 1.2+ x86-64

pindock-1.1.2-py3-none-musllinux_1_2_aarch64.whl (3.8 MB view details)

Uploaded Python 3musllinux: musl 1.2+ ARM64

pindock-1.1.2-py3-none-manylinux_2_17_x86_64.whl (4.3 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ x86-64

pindock-1.1.2-py3-none-manylinux_2_17_aarch64.whl (3.8 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ ARM64

pindock-1.1.2-py3-none-macosx_11_0_arm64.whl (4.0 MB view details)

Uploaded Python 3macOS 11.0+ ARM64

pindock-1.1.2-py3-none-macosx_10_9_x86_64.whl (4.3 MB view details)

Uploaded Python 3macOS 10.9+ x86-64

File details

Details for the file pindock-1.1.2-py3-none-win_arm64.whl.

File metadata

  • Download URL: pindock-1.1.2-py3-none-win_arm64.whl
  • Upload date:
  • Size: 3.9 MB
  • Tags: Python 3, Windows ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for pindock-1.1.2-py3-none-win_arm64.whl
Algorithm Hash digest
SHA256 325a4875102adb9eba4078a3a2ee8979c97c518dee42ee83c3b385c47fe52390
MD5 2f0d1bf631a5ea17129bd2d8c6ec4b24
BLAKE2b-256 d88d75a816df20a06129735c95a2ed4179d4659d97405f32fc54fe00563d414d

See more details on using hashes here.

Provenance

The following attestation bundles were made for pindock-1.1.2-py3-none-win_arm64.whl:

Publisher: main.yml on deadnews/pindock

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pindock-1.1.2-py3-none-win_amd64.whl.

File metadata

  • Download URL: pindock-1.1.2-py3-none-win_amd64.whl
  • Upload date:
  • Size: 4.4 MB
  • Tags: Python 3, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for pindock-1.1.2-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 7bc151aba6ab213164ae7a00a6641dfac6538aeb5d490bc1598f2afa7479db9d
MD5 3b73669c96d380c075384ea803d9f554
BLAKE2b-256 dfb092bbdac1029fd418e4ace9585817f0e4eb69a74a38ca2a29ebe24466100b

See more details on using hashes here.

Provenance

The following attestation bundles were made for pindock-1.1.2-py3-none-win_amd64.whl:

Publisher: main.yml on deadnews/pindock

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pindock-1.1.2-py3-none-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pindock-1.1.2-py3-none-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 c77207e460aa649a92d227450dc3334b0bc8c91dcccf5ac5b514361e4f365f5a
MD5 f96524c979dcf7afcb2afc12ed4543e6
BLAKE2b-256 70e0f67019ade8b007a14f365000fbf81a666c05bf4a44db23a5f16e8c297e46

See more details on using hashes here.

Provenance

The following attestation bundles were made for pindock-1.1.2-py3-none-musllinux_1_2_x86_64.whl:

Publisher: main.yml on deadnews/pindock

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pindock-1.1.2-py3-none-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for pindock-1.1.2-py3-none-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 e3a5de235c870b3a0275454b73c8bcc8e0571c40af968bc6b6667d350a940aaa
MD5 be1554d2f266b9e334c788ab6a037fc4
BLAKE2b-256 0544602a76a1c823ddcd3684528303edc48de64cbdaaed581aaab78b006179c5

See more details on using hashes here.

Provenance

The following attestation bundles were made for pindock-1.1.2-py3-none-musllinux_1_2_aarch64.whl:

Publisher: main.yml on deadnews/pindock

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pindock-1.1.2-py3-none-manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for pindock-1.1.2-py3-none-manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 d5081b917be20bc8710721ffb31d51fe8ce8525e96e13b6649169a79ed8880a6
MD5 ea6b7859621843fa8cb57865c5acbf7c
BLAKE2b-256 373e0e1bf76a0153e6d19d359f45ff5028b4baf937deea3ecab1ad9c28335a1d

See more details on using hashes here.

Provenance

The following attestation bundles were made for pindock-1.1.2-py3-none-manylinux_2_17_x86_64.whl:

Publisher: main.yml on deadnews/pindock

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pindock-1.1.2-py3-none-manylinux_2_17_aarch64.whl.

File metadata

File hashes

Hashes for pindock-1.1.2-py3-none-manylinux_2_17_aarch64.whl
Algorithm Hash digest
SHA256 a6e9d9d236dc164fb63a2ec9ed23262eb4b7cbcb40079c90afa2b281115c21cd
MD5 7a1355c034b99b14fc835d3a8a49f55d
BLAKE2b-256 5fa122e2898a6882b0e330692632c4d54f8ae1eefafc5b7524d55295fb0863bd

See more details on using hashes here.

Provenance

The following attestation bundles were made for pindock-1.1.2-py3-none-manylinux_2_17_aarch64.whl:

Publisher: main.yml on deadnews/pindock

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pindock-1.1.2-py3-none-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pindock-1.1.2-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 2f36618864ada0aea1896bd1471b2d5c3b306dd9d2985b65e82037e940ebb7a5
MD5 568af9beba13907d822e443f07d2a9e7
BLAKE2b-256 28612076bf52bfaa7fcf8c082f8d11e01b6858956de8f18ffff31894dfd1ea28

See more details on using hashes here.

Provenance

The following attestation bundles were made for pindock-1.1.2-py3-none-macosx_11_0_arm64.whl:

Publisher: main.yml on deadnews/pindock

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pindock-1.1.2-py3-none-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pindock-1.1.2-py3-none-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 8b11cc4abbb2708e08f30526d743d2e7979e1b2411434730abcaecba8d0c88d5
MD5 d0027cb29ac9aafbcbddae5177a8a6f7
BLAKE2b-256 db01192c20aa6f3fc8ebd0fde3668fd4abb1c8631d8676dcbfcbae97f501196f

See more details on using hashes here.

Provenance

The following attestation bundles were made for pindock-1.1.2-py3-none-macosx_10_9_x86_64.whl:

Publisher: main.yml on deadnews/pindock

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page