Sign inSign up

demlabz/dockadmin

By demlabz

β€’Updated 7 months ago

A lightweight, Docker native database administration tool for managing databases

Image
Networking
API management
Databases & storage
1

2.2K

demlabz/dockadmin repository overview

DockAdmin

License: MIT Docker Status

A lightweight, Docker-native database administration UI for developers.

DockAdmin Screenshot


⁠✨ Features

  • 🐘 Multi-Database Support β€” PostgreSQL, MySQL, and SQLite supported databases
  • 🎨 Modern UI β€” Beautiful interface
  • πŸ“Š Visual CRUD β€” Browse, insert, edit, and delete data with inline editing add row create table
  • πŸ“ SQL Editor β€” Execute raw SQL queries with syntax highlighting sql editor
  • πŸ” Schema Viewer β€” Explore table structures, indexes, and foreign keys schema viewer
  • 🐳 Docker-First β€” Optimized multi-stage build (~15MB image)
  • πŸ” Simple Auth β€” Database credentials ARE the authentication (Adminer-style) auth page

β πŸš€ Quick Start

⁠Add to Your Docker Compose

Add DockAdmin alongside your existing database containers:

services:
    # Your existing database
    postgres:
        image: postgres:16
        environment:
            POSTGRES_USER: admin
            POSTGRES_PASSWORD: admin
            POSTGRES_DB: myapp
        # ... your other config

    # Add DockAdmin
    dockadmin:
        image: demlabz/dockadmin
        ports:
            - '3000:3000'

Then run:

docker compose up -d

Open http://localhost:3000⁠ and connect to your database using the container name as the host (e.g., postgres).

⁠Standalone
docker run -p 3000:3000 demlabz/dockadmin

Note: When running standalone, use your database's accessible host/IP to connect.


β πŸ› οΈ Development

Want to contribute? See the Contributing Guide⁠ for development setup instructions.


β βš™οΈ Configuration

DockAdmin can be configured via environment variables:

VariableDescriptionDefault
PORTServer port3000
RUST_LOGLog level (debug, info, warn, error)info

β πŸ“š API Reference

DockAdmin exposes a RESTful API for all database operations.

⁠Key Endpoints
EndpointMethodDescription
/api/connectPOSTConnect to a database
/api/statusGETCheck connection status
/api/schema/tablesGETList all tables
/api/table/{name}GETBrowse table data
/api/queryPOSTExecute raw SQL

β πŸ—οΈ Tech Stack

ComponentTechnology
BackendRust, Axum, SQLx
FrontendReact 19, TypeScript, TanStack Router
UI Componentsshadcn/ui, Radix UI, Tailwind CSS
EditorCodeMirror 6
ContainerDocker, Alpine Linux

β πŸ—ΊοΈ Roadmap

  • PostgreSQL support
  • MySQL support
  • SQLite support
  • CRUD operations
  • SQL editor
  • Schema viewer
  • Data export (SQL/CSV)
  • Data import
  • Full-text search
  • Connection history
  • Multi-database sessions

⁠🀝 Contributing

Contributions are welcome! Please read our Contributing Guide⁠ before submitting a Pull Request.

⁠Quick Steps
  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

β πŸ“„ License

This project is licensed under the MIT License - see the LICENSE⁠ file for details.


β πŸ™ Acknowledgments

  • Adminer⁠ β€” For the inspiration of simple, effective database management
  • shadcn/ui⁠ β€” For the beautiful component library

Made with ❀️ by Mr-Malomz⁠

Tag summary

Content type

Image

Digest

sha256:e7ae52326…

Size

7.6 MB

Last updated

7 months ago

docker pull demlabz/dockadmin