MCPcopy Index your code
hub / github.com/crazy-max/undock

github.com/crazy-max/undock @v0.14.0

Chat with this repo
repository ↗ · DeepWiki ↗ · release v0.14.0 ↗ · + Follow
127 symbols 477 edges 26 files 22 documented · 17%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Documentation GitHub release Total downloads Build Status Docker Stars Docker Pulls

Go Report Codecov Become a sponsor Donate Paypal

About

Undock is a CLI tool for unpacking files from container images into a local directory, without having to run the image as a container.

It is useful when an image is acting as a delivery format rather than something you want to start, for example release artifacts, generated assets, root filesystems, or any other files stored in an image. Point Undock at an image, choose what you want to extract, and write it to disk with a single command.

Features

  • Many source support (docker, archive, store, oci, tar)
  • Can extract multi-platform images
  • Include a subset of files/dirs
  • Cache support

Documentation

Documentation can be found at https://crazymax.dev/undock/

Contributing

Want to contribute? Awesome! The most basic way to show your support is to star the project, or to raise issues. You can also support this project by becoming a sponsor on GitHub or by making a PayPal donation to ensure this journey continues indefinitely!

Thanks again for your support, it is much appreciated! :pray:

License

MIT. See LICENSE for more details.

Icon credit to DinosoftLabs.

Extension points exported contracts — how you extend this code

Handler (Interface)
Handler is an extractor interface [1 implementers]
pkg/extractor/extractor.go

Core symbols most depended-on inside this repo

ExtractBlob
called by 20
pkg/extractor/blob.go
Name
called by 11
pkg/image/image.go
String
called by 10
pkg/extractor/image/source.go
String
called by 9
pkg/image/image.go
Scheme
called by 9
pkg/extractor/image/source.go
extractCachedSource
called by 6
pkg/extractor/image/image.go
isRetryableWindowsRenameError
called by 6
pkg/extractor/image/copyretry_windows.go
Write
called by 5
pkg/extractor/image/cache.go

Shape

Function 86
Method 23
Struct 17
Interface 1

Languages

Go98%
Python2%

Modules by API surface

pkg/extractor/blob_test.go19 symbols
pkg/extractor/blob.go17 symbols
pkg/extractor/image/image_test.go14 symbols
internal/app/app_test.go13 symbols
pkg/extractor/image/image.go7 symbols
pkg/image/image.go6 symbols
pkg/extractor/image/source.go6 symbols
pkg/extractor/image/cache.go6 symbols
pkg/extractor/extractor.go4 symbols
internal/app/app.go4 symbols
pkg/image/ref.go3 symbols
pkg/extractor/image/source_test.go3 symbols

For agents

$ claude mcp add undock \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact