background

DPRS

DPRS (Docker PRocesS Manager) offers a terminal user interface for managing Docker containers and monitoring their logs. We built DPRS to address common developer frustrations, focusing on reliability and usability for day-to-day software development workflows.

While Docker is an indispensable tool for modern development, managing containers and their logs through the command line can often feel cumbersome. DPRS aims to streamline these interactions, providing a focused environment for developers. Our design prioritizes features relevant to software development, rather than comprehensive sysadmin or DevOps tasks. This means we emphasize quick access to logs, easy container control, and a clear overview of your local development environment.

DPRS demo video

Features

DPRS provides a focused set of features designed to streamline the most common Docker container management and monitoring tasks for developers. These capabilities aim to reduce friction and enhance productivity during the development cycle.

These features collectively aim to provide a robust yet unobtrusive tool for daily Docker-centric development.

Installation

cargo install dprs

Usage

DPRS offers two primary binaries, each designed for a specific aspect of Docker container management during development. We will walk through how to use each.

dprs - The Container Manager

To launch the main container manager, simply run:

dprs

Upon launch, you will see a real-time list of your running Docker containers, displaying essential details such as name, image, status, IP address, and exposed ports. Navigating this list is straightforward; you can use the arrow keys or j/k to move between containers.

Here are the key commands you can use within dprs:

dplw - The Log Watcher

For real-time monitoring of container logs, use the log watcher binary:

dplw

This tool allows you to watch logs from multiple containers simultaneously, with color-coded log levels (Info, Warning, Error, Debug) for enhanced readability. This is invaluable for debugging and understanding the runtime behavior of your applications.

Key commands for dplw:

Philosophy

DPRS is built upon a set of core principles that guide its development and design, ensuring it remains a valuable tool for developers:

Development

For those interested in contributing to DPRS or building it from source, this section outlines the necessary steps and project structure.

Requirements

Note: Ensuring your Docker daemon is actively running is crucial for DPRS to function correctly, as it directly interacts with Docker’s API.

Building

To build DPRS in release mode, use the following command:

cargo build --release

Testing

To run the project’s test suite, execute:

cargo test

Project Structure

The DPRS codebase is organized into several key modules:

Contributing

Contributions are welcome! Please read our contributing guidelines and code of conduct before submitting pull requests.

License

MIT.

Copyright (c) 2025 Durable Programming, LLC. All rights reserved.

Support

For bugs, feature requests, or questions, please open an issue on GitHub.

Acknowledgments

DPRS stands on the shoulders of excellent open-source projects and the vibrant communities that maintain them. We are grateful for their contributions, which make tools like DPRS possible.

Built with:

We extend special thanks to the Docker and Rust communities for their continuous innovation, excellent tools, and comprehensive documentation. Their work is an invaluable resource for developers worldwide.

Note: The open-source ecosystem thrives on contributions. If you find these tools valuable, consider supporting their development through contributions, documentation, or community engagement.

GitHub

16 stars | 📅 Created April 2025 | 🔄 Updated September 2025

View on GitHub