Skip to content

๐Ÿณ A beautiful terminal UI for managing Docker containers and images with ease. Built with Go and Bubble Tea for cross-platform support on Windows and Linux. Navigate, inspect, and monitor your Docker environment without leaving the terminal! ๐Ÿš€โœจ

Notifications You must be signed in to change notification settings

VinsmokeSomya/PuffyContainer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

5 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐Ÿšฉ๐Ÿงก๐Ÿ•‰๏ธ || เคœเคฏ เคถเฅเคฐเฅ€ เคฐเคพเคฎ || ๐Ÿ•‰๏ธ๐Ÿงก๐Ÿšฉ

PuffyContainer ๐Ÿณ

A beautiful terminal UI to manage Docker containers and images without stress. Written in Go with Bubbletea ๐Ÿง‹

Compatible with both Windows and Linux containers through Docker.

โœจ Features

  • ๐Ÿ‹ Container Management: View all Docker containers (running and stopped)
  • ๐Ÿ“ฆ Image Management: View all Docker images with details
  • ๐Ÿ” Container Inspection: View detailed information including:
    • Container ID and Image
    • CPU and Memory limits
    • Network configuration
    • Environment variables
  • ๐Ÿ–ผ๏ธ Image Inspection: View detailed information including:
    • Image name and ID
    • Size and creation date
  • ๐ŸŒ Cross-Platform: Works on both Windows and Linux with Docker installed
  • โšก Real-time Updates: Live container and image status
  • ๐ŸŽจ Beautiful TUI: Clean, modern terminal interface

๐Ÿš€ Quick Start

Prerequisites

  • Docker installed and running
  • Go 1.20+ (for building from source)

Installation

From Source

git clone https://github.com/VinsmokeSomya/PuffyContainer.git

cd PuffyContainer

go build -o puffycontainer.exe ./cmd  # Windows

go build -o puffycontainer ./cmd      # Linux/macOS

Quick Run (Development)

git clone https://github.com/VinsmokeSomya/PuffyContainer.git

cd PuffyContainer

go mod tidy

go run cmd/main.go

๐ŸŽฎ Usage

Start the terminal UI:

./puffycontainer.exe  # Windows

./puffycontainer      # Linux/macOS

Controls

Key Action
โ†‘ / โ†“ Navigate up/down in tables
Tab Switch between Containers and Images
Enter View detailed information
q / Ctrl+C Exit application

Interface Layout

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚ Containers                          โ”‚โ”‚ Container/Image Details              โ”‚
โ”‚โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”‚โ”‚                                      โ”‚
โ”‚ running   nginx:latest              โ”‚โ”‚ ID: abc123...                        โ”‚
โ”‚ stopped   redis:alpine              โ”‚โ”‚ Image: nginx:latest                  โ”‚
โ”‚                                     โ”‚โ”‚ CPU: 2                               โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜โ”‚ Memory: 512MB                        โ”‚
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”โ”‚ Networks: bridge: 172.17.0.2        โ”‚
โ”‚ Images                              โ”‚โ”‚ Environment: PATH=/usr/local/bin...  โ”‚
โ”‚โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”‚โ”‚                                      โ”‚
โ”‚ nginx        latest                 โ”‚โ”‚                                      โ”‚
โ”‚ redis        alpine                 โ”‚โ”‚                                      โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

๐Ÿ”ง Docker Commands Used

The application uses standard Docker CLI commands:

  • docker ps -a - List all containers
  • docker images - List all images
  • docker inspect - Get detailed information about containers/images

๐Ÿ–ฅ๏ธ Supported Platforms

  • Windows: Works with Docker Desktop or Docker Engine
  • Linux: Works with Docker Engine
  • Windows Containers: Supported when Docker is configured for Windows containers
  • Linux Containers: Supported when Docker is configured for Linux containers

๐Ÿ› ๏ธ Development

The application is built with:

Building from Source

# Clone the repository
git clone https://github.com/VinsmokeSomya/PuffyContainer.git

cd PuffyContainer

# Install dependencies
go mod tidy

# Build for your platform
go build -o puffycontainer ./cmd

# Or build for specific platforms
GOOS=windows GOARCH=amd64 go build -o puffycontainer.exe ./cmd

GOOS=linux GOARCH=amd64 go build -o puffycontainer ./cmd

GOOS=darwin GOARCH=amd64 go build -o puffycontainer ./cmd

๐Ÿ› Troubleshooting

Problem Solution
No containers/images showing Ensure Docker is running and you have containers/images available
Permission errors On Linux, ensure your user is in the docker group or run with sudo
Command not found Ensure Docker is installed and in your PATH
Application crashes Check Docker daemon is running and accessible

๐Ÿค Contributing

Contributions are welcome! Feel free to submit a pull request or open an issue for any suggestions or improvements.

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add some amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

๐ŸŒŸ Show Your Support

Give a โญ๏ธ if this project helped you!

๐Ÿ“ง Contact

About

๐Ÿณ A beautiful terminal UI for managing Docker containers and images with ease. Built with Go and Bubble Tea for cross-platform support on Windows and Linux. Navigate, inspect, and monitor your Docker environment without leaving the terminal! ๐Ÿš€โœจ

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages