Skip to content
/ d4s Public

🍊 A fast, keyboard-driven terminal UI to manage Docker containers, Compose stacks, and Swarm services with the ergonomics of K9s.

License

Notifications You must be signed in to change notification settings

jr-k/d4s

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

D-Force (d4s)

D4S (pronounced D-Force) brings the power and ergonomics of K9s to the local Docker ecosystem. Stop wrestling with verbose CLI commands and start managing your containers like a pro.

Manage your Docker Swarm, Compose stacks, and Containers with a fancy, fast, and keyboard-centric Terminal User Interface.

Screenshots


Features

  • Fancy UI: Modern TUI with Dracula theme, smooth navigation, and live updates.
  • Keyboard Centric: Vim-like navigation (j/k), shortcuts for everything. No mouse needed.
  • Full Scope: Supports Containers, Images, Volumes, Networks.
  • Compose Aware: Easily identify containers belonging to Compose stacks.
  • Swarm Aware: Supports Nodes, Services.
  • Powerful Search: Instant fuzzy filtering (/) and command palette (:).
  • Live Stats: Real-time CPU/Mem usage for containers and host context.
  • Advanced Logs: Streaming logs with auto-scroll, timestamps toggle, and wrap mode.
  • Quick Shell: Drop into a container shell (s) in a split second.
  • Contextual Actions: Inspect, Restart, Stop, Prune, Delete with safety confirmations.

Installation

Homebrew (MacOS / Linux)

brew install jr-k/d4s/d4s

Docker

docker run --rm --pull always -it -v /var/run/docker.sock:/var/run/docker.sock ghcr.io/jr-k/d4s:latest

You might want to create an alias for quicker usage. For example:

echo "alias d4s='docker run --rm --pull always -it -v /var/run/docker.sock:/var/run/docker.sock ghcr.io/jr-k/d4s:latest'" >> ~/.zshrc

After running this, either restart your terminal or run source ~/.zshrc (or source ~/.bashrc for Bash) to enable the alias.


Binary Releases (Linux / MacOS / Windows)

Automated

curl -fsSL https://d4scli.io/install.sh | sh -s -- ~/.local/bin

The script installs downloaded binary to $HOME/.local/bin directory by default, but it can be changed by setting DIR environment variable.

Manual

Grab a release from the releases page and install it manually.


Scoop (Windows)

scoop bucket add d4s https://github.com/jr-k/scoop-d4s
scoop install d4s

From Source

Requirement: Go 1.21+

git clone https://github.com/jr-k/d4s.git
cd d4s
go build -o d4s cmd/d4s/main.go
sudo mv d4s ~/.local/bin/
# Make the binary accessible then run it
mv d4s ~/.local/bin/
d4s

# Quickly run from source
go run cmd/d4s/main.go

Usage

d4s
d4s version

Contributing

There's still plenty to do! Take a look at the contributing guide to see how you can help.

Discussion / Need help ?

Join our Discord

Open an Issue


Built with Go & Tview. Inspired by K9s.

D4s uses several open source libraries. Thanks to the maintainers who make this possible.

About

🍊 A fast, keyboard-driven terminal UI to manage Docker containers, Compose stacks, and Swarm services with the ergonomics of K9s.

Resources

License

Contributing

Stars

Watchers

Forks

Sponsor this project

Packages

 
 
 

Contributors 2

  •  
  •  

Languages