Reverse Engineering a Docker Image

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
  • dive

    A tool for exploring each layer in a docker image

  • There are some subtle differences between tools that generate Docker images.

    As seen in this Dive issue[1], Google's Kaniko uses a different naming convention for the config files. Docker config files are called .json, Kaniko are "sha256:".

    [1] https://github.com/wagoodman/dive/issues/318

  • Whaler

    Program to reverse Docker images into Dockerfiles

  • In addition to Dive, there's also Whaler https://github.com/P3GLEG/Whaler which will print out a Dockerfile from the image, based on the metadata in the image.

    You can also use Portainer https://www.portainer.io/ which will show the image layer details in the images section.

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
  • docker-explorer

    A tool to help forensicate offline docker acquisitions

  • Google forensic team also maintain an Docker introspection tool : https://github.com/google/Docker-Explorer

  • lazydocker

    The lazier way to manage everything docker

  • prettier

    Discontinued Dockernized prettier. This is an opinionated code formatter. (by tmknom)

  • 10 months ago /bin/sh -c #(nop) LABEL org.label-schema.vendor=tmknom org.label-schema.name=tmknom/prettier org.label-schema.description=Prettier is an opinionated code formatter. org.label-schema.build-date=2020-04-29T06:34:01Z org.label-schema.version=2.0.5 org.label-schema.vcs-ref=35d2587 org.label-schema.vcs-url=https://github.com/tmknom/prettier org.label-schema.usage=https://github.com/tmknom/prettier/blob/master/README.md#usage org.label-schema.docker.cmd=docker run --rm -v $PWD:/work tmknom/prettier --parser=markdown --write '**/*.md' org.label-schema.schema-version=1.0 0B

  • mtsc

    MTree SCanner

  • Obligatory self promotion: https://github.com/nanoscopic/mtsc

    It is a tool I created myself for figuring out the contents of layered docker images.

    It does these things:

    1. Compares two docker images to see exact file differences

    2. Diffs the contents of two directory structures

    3. Views contents of a docker image without mounting it or using docker itself

    4. Generates a standalone index of the contents of a docker image

    5. Determines the resultant layer composition of a directory within a docker image

    6. Extracts a specific pathed file from a layered docker image

    It is extremely helpful when trying to determine the exact differences between two different builds of the same Dockerfile.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts