Skip to content

Latest commit

 

History

22 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Dacker

Dacker dashboard thumbnail

Dacker is a modern Docker monitoring dashboard that provides real-time container insights, image management, and admin access in a single Docker image.

Features

  • Admin login with first-login password reset
  • Live container metrics (CPU, memory)
  • Image and container management (start/stop/restart/update/delete)
  • Detailed container logs and metadata views
  • Real-time search across containers and images

Tech Stack

  • Backend: FastAPI (Python 3.13)
  • Frontend: React + Vite
  • Database: SQLite
  • Auth: JWT
  • Docker SDK for runtime stats and actions

Quick Start (Docker Compose)

Create a docker-compose.yml file:

services:
  dacker:
    image: zeusdlk/dacker:latest
    ports:
      - "7878:7878"
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
      - dacker-data:/data
    restart: unless-stopped

volumes:
  dacker-data:

Run:

docker compose up -d

Open:

http://localhost:7878

Default credentials:

  • Username: admin
  • Password: admin

On first login, you'll be prompted to set a new password. Data is stored in /data/app.db.

Run Without Compose

docker run -d --name dacker \
  -p 7878:7878 \
  -v /var/run/docker.sock:/var/run/docker.sock \
  -v dacker-data:/data \
  zeusdlk/dacker:latest

Local Development

Backend:

cd backend
python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
uvicorn app.main:app --reload --port 7878

Frontend:

cd frontend
npm install
npm run dev

What I Learned (Advanced Python)

  • Async-ready FastAPI architecture: structuring routes, request models, and response handling cleanly while keeping the service async-friendly.
  • JWT-based auth flow: issuing tokens, validating requests, and enforcing protected routes.
  • Secure password storage: using strong hashing with passlib and tracking first-login resets in SQLite.
  • Service composition: separating Docker API integrations into a dedicated module for clean boundaries.
  • Error handling and resiliency: returning safe API errors while shielding the UI from runtime failures.

Notes

  • Access to /var/run/docker.sock is required to list and manage containers/images.
  • The app is packaged as a single Docker image containing both backend and frontend.

About

No description, website, or topics provided.

Resources

Stars

8 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages