Do Docker commands slip your mind because you don't use Docker often enough? Sick of googling commands for everyday tasks? GoManageDocker is designed to NUKE this annoyance.
Introducing goManageDocker (get it?)! This blazing fast TUI, made using Go and BubbleTea, will make managing your Docker objects a breeze.
You can install the latest release of goManageDocker on UNIX systems with a simple bash script:
bash -c "$(curl -sLo- https://raw.githubusercontent.com/ajayd-san/gomanagedocker/main/install.sh)"
Start the program with gmd
.
Just build like any other Go binary:
go install github.com/ajayd-san/gomanagedocker@main
Start the program with gomanagedocker
(Rename it to gmd
if you'd like, the binary will be installed at your $GOPATH
).
You can get the latest precompiled binary from releases or you may build from source.
Now, goManageDocker π!!
Note
goManageDocker runs best on terminals that support ANSI 256 colors and designed to run while the terminal is maximized.
Want to try this without installing a binary? I gotchu!
docker run -it -v /var/run/docker.sock:/var/run/docker.sock kakshipth/gomanagedocker:latest
Alias it to something quicker (unless you like typing a lot π)
-
Exec into selected container with A SINGLE KEYSTROKE:
x
...How cool is that? -
Delete objects using
d
(You can force delete withD
, you won't have to answer a prompt this way) -
You can directly copy the ID to your clipboard of an object by pressing
c
. -
You can now run and exec into an image directly from the images tab with
x
Operation | Key |
---|---|
Back | Esc |
Quit | Ctrl + c / q |
Next Tab | β / l / Tab |
Prev Tab | β / h / Shift + Tab |
Next Item | β / j |
Prev Item | β / k |
Next Page | [ |
Prev Page | ] |
Enter bulk mode | Space |
Operation | Key |
---|---|
Run | r |
Build Image | b |
Scout | s |
Prune | p |
Delete | d |
Delete (Force) | D |
Copy ID | c |
Run and Exec | x |
Operation | Key |
---|---|
Toggle List All | a |
Toggle Start/Stop | s |
Toggle Pause | t |
Restart | r |
Delete | d |
Delete (Force) | D |
Exec | x |
Prune | p |
Copy ID | c |
Show Logs | L |
Operation | Key |
---|---|
Delete | d |
Prune | p |
Copy Volume Name | c |
I've added support for config files from V1.2.
Place gomanagedocker/gomanagedocker.yaml
in your XDG config folder and configure to your heart's content!
Default Configuration:
config:
Polling-Time: 500
Tab-Order: [images, containers, volumes]
Notification-timeout: 2000
- Polling-Time: Set how frequently the program calls the docker API (measured in milliseconds, default: 500ms)
- Tab-Order: Set the order of tabs displayed, the keys must be
images
,containers
andvolumes
. You can omit the names of the tabs you do not wish to see as well. Say I want to seecontainers
tab first and do not want to see thevolumes
tab, I can setTab-Order: [containers, images]
- Notification-Timeout: Set how long a status message sticks around for (measured in milliseconds, default: 2000ms)
- Add a networks tab
- Make compatible with podman π
Feel free to open a new issue, I will take a look ASAP.
Please refer CONTRIBUTING.md for more info.