A modern TUI tool for exploring container image layers with an intuitive interface.
The name "sou" comes from the Japanese word "ε±€" (γγ/sΕ) which means "layer". It can be pronounced as "so".
- π Interactive TUI for seamless navigation through container images
- π Explore files within each layer using a built-in file picker
- π Quick preview of file contents within layers
- πΎ Easy export of files from layers to your local filesystem
- π View image manifests and configurations
- π¦ Support for both local and remote container images
π€ This project is experimentally developed entirely with Claude 3.5 Sonnet, exploring the possibilities of AI-assisted development.
brew install knqyf263/sou/sou
docker run --rm -it ghcr.io/knqyf263/sou:latest nginx:latest
go install github.com/knqyf263/sou@latest
git clone https://github.com/knqyf263/sou.git
cd sou
go build -o sou
sou <image-name>
Example:
# Local image
sou nginx:latest
# Remote image
sou ghcr.io/knqyf263/my-image:latest
β/k
: Move cursor upβ/j
: Move cursor downβ/l
: View layer contentsg
: Go to first itemG
: Go to last itemK/pgup
: Page upJ/pgdown
: Page downyy
: Copy layer diff ID/
: Filter layers?
: Toggle helpq
: Quit
β/k
: Move cursor upβ/j
: Move cursor downβ/h
: Go backβ/l
: View/open file.
: Toggle hidden filesx
: Export file/
: Filter files?
: Toggle helpq
: Quit
β/k
: Scroll upβ/j
: Scroll downβ/h
: Go back to file listq
: Quit
Contributions are welcome! Please feel free to submit a Pull Request.
Apache License 2.0 - see LICENSE for more details.