DPRS (Docker PRocesS Manager) is a terminal user interface for managing Docker containers and monitoring their logs. Built with a focus on reliability, usability, and efficient container management.
DPRS is designed to assist in software development, not sysadmin or DevOps, and features related to those tasks are prioritized.
.o8
"888 _____ __
.oooo888 oo.ooooo. oooo d8b .oooo.o | \.-----.----.| |--.-----.----.
d88' `888 888' `88b `888""8P d88( `8 () | -- | _ | __|| <| -__| _|
888 888 888 888 888 `"Y88b. |_____/|_____|____||__|__|_____|__| _______
888 888 888 888 888 o. )88b () | __ \ __ \.-----.----.-----.-----.| __|
`Y8bod88P" 888bod8P' d888b 8""888P' | __/ <| _ | __| -__|__ --||__ |
--------- 888 --------------------- |___| |___|__||_____|____|_____|_____||_______|
o888o .--------.---.-.-----.---.-.-----.-----.----.
A Durable | | _ | | _ | _ | -__| _|
Programming |__|__|__|___._|__|__|___._|___ |_____|__|
Production |_____|
-
Container Management
- List running containers with details (name, image, status, IP, ports)
- Stop containers with a single keystroke
- Copy container IP addresses to clipboard
- Open container web interfaces in browser
- Real-time container list refresh
-
Log Monitoring
- Real-time log streaming from multiple containers
- Color-coded log levels (Info, Warning, Error, Debug)
- Easy navigation between container logs
- Scroll through log history
- Automatic log rotation to manage memory usage
cargo install dprs
DPRS provides two main binaries:
dprs
Navigate containers with arrow keys or j/k
q
: Quitc
: Copy selected container's IP addressl
: Open container web interface in browserx
: Stop selected containerr
: Refresh container list
dplw
Watch logs from multiple containers:
- Left/Right arrows: Switch between containers
- Up/Down arrows: Scroll through logs
- Home/End: Jump to start/end of logs
r
: Refresh container listq
: Quit
DPRS is built on principles of:
- Reliability: Stable, well-tested code that handles edge cases gracefully
- Usability: Intuitive interface with clear feedback for all actions
- Efficiency: Fast operation with minimal resource usage
- Pragmatism: Focused on solving real container management needs
- Rust 2024 edition
- Docker daemon running locally
cargo build --release
cargo test
src/app/
: Application state and action handlerssrc/display/
: UI components and renderingsrc/docker_log_watcher/
: Container log monitoringsrc/log_view/
: Log display and navigation
Contributions are welcome! Please read our contributing guidelines and code of conduct before submitting pull requests.
MIT.
Copyright (c) 2025 Durable Programming, LLC. All rights reserved.
For bugs, feature requests, or questions, please open an issue on GitHub.
Built with:
Special thanks to the Docker and Rust communities for their excellent tools and documentation.