โ— Shell
clean mode source โ†—

GitHub - Timo-In/dcli: This is a project forked from lazydocker, but it only implements the CLI mode.

The Lazier Way to Manage Everything Docker

Language Release Go Report Card License

An efficient, intuitive, and "lazy" CLI manager for Docker and Docker-Compose.


๐Ÿ“– Introduction

dcli is a high-efficiency Docker management tool built for developers. Evolved from the acclaimed lazydocker, it moves away from a heavy TUI (Terminal UI) towards a pure CLI interactive mode that better aligns with terminal philosophy.

It automatically detects your project environment, merges fragmented Compose files, and frees you from typing long docker-compose -f ... -f ... up commands.


โœจ Key Features

  • ๐Ÿ“‚ Smart Context Detection Automatically identifies .git or project roots, deep scans, and merges all docker-compose*.yml configuration files.
  • ๐Ÿ” Interactive Fuzzy Search Built-in fzf-like search experience. Simply press s to instantly locate containers, images, or volumes.
  • ๐Ÿ› ๏ธ Unified Management Workflow Seamlessly manages both local Compose projects and standalone Docker containers. Automatically switches to Fallback mode for external containers to ensure core management is never interrupted.
  • โšก One-Key Actions Supports numeric shortcuts (1-17) and shorthand commands. Start, restart, or view logs in an instant.
  • ๐Ÿงน System Deep Cleanup Built-in Prune commands to quickly reclaim disk space from unused networks, volumes, images, and build caches.
  • ๐Ÿ“ฆ Predefined Stack Templates One-click deployment for common development environments like ELK log monitoring stacks, MySQL/Redis database stacks, and more.

๐Ÿš€ Quick Start

Installation

Via Go:

go install github.com/Timo-In/dcli@latest

Or download binary from the release page: GitHub Releases


โŒจ๏ธ Usage

Simply run dcli in your terminal to enter interactive mode:

Command Flags

Flag Description
-a, --arun Show all services (including non-running ones)
-n, --nrun Show only non-running services
-f, --file Manually specify custom Compose files
-p, --project Specify a custom project name
-c, --config Print the current default configuration

๐ŸŽฎ Interactive Guide

Once inside dcli, you can perform operations using the following shortcuts:

Core Operations

  • 1 - 3: Up / Stop / Restart services
  • 4: View logs (type exit to return)
  • 7: Enter container (auto-detects bash or sh)
  • 8: Build and update services
  • s: Enable fuzzy search mode
  • menu: Show full functionality menu
  • 0: Exit program

Quick Filtering

  • a: Switch to "Show All"
  • r: Switch to "Running Only"
  • l: Switch to list mode

๐Ÿ› ๏ธ Customization

Configuration files are typically located at:

  • macOS: ~/Library/Application Support/Timo-In/dcli/config.yml
  • Linux: ~/.config/Timo-In/dcli/config.yml

You can view your current default configuration and make adjustments by running dcli -c.


๐Ÿ“œ Credits

The birth of this project was inspired by lazydocker. We have refactored and optimized its powerful Docker management logic into a CLI-focused tool for heavy terminal users.


Built with โค๏ธ by the open-source community.