Skip to content

Repository files navigation

Docker View

轻量级 Docker Web 管理面板

Docker License English


轻量级 Docker 管理面板,基于原生 JavaScript + Express 构建。无重型框架,无复杂依赖,一个单页应用搞定一切。

支持多实例管理,包括本机 Docker 和 Docker-in-Docker (DinD) 环境。

界面预览

仪表盘   容器管理

镜像管理   Web 终端

容器模板   构建管理

为什么选择 Docker View?

Docker View Portainer Docker Desktop
镜像大小 ~150 MB ~300 MB ~1 GB+
启动时间 < 2s ~10s ~30s
多 Docker DinD 支持 Swarm/K8s 单实例
中文界面 原生支持 部分支持 不支持
开源协议 MIT Zlib

功能特性

  • 仪表盘 — 容器/镜像/网络/数据卷统计,磁盘使用,Docker 引擎信息
  • 多实例 — 在本机 Docker 和 DinD 容器之间无缝切换
  • 容器管理 — 启动、停止、重启、删除;查看日志、监控、文件;Web 终端;容器修改可提交为新镜像
  • 镜像管理 — 构建、拉取、导出、导入,实时流式进度
  • Compose — 管理 Docker Compose 项目:从 YAML 创建,up/down/restart
  • 网络与数据卷 — 创建、删除、检查、清理未使用资源
  • 容器模板 — 9 个内置模板(Docker DinD、nginx、mysql、redis、postgres、mongo、mariadb),一键部署
  • 构建系统 — 管理构建规则,一键构建,流式日志,支持自动导出
  • 资源监控 — 实时 CPU/内存图表
  • 定时任务 — 自动清理悬空镜像、已停止容器、未使用卷
  • 权限控制 — 管理员/只读两种角色,完整审计日志
  • 中英双语 — 自动检测浏览器语言
  • 快捷键Esc 关闭、/ 搜索、Ctrl+1-9 切换视图、r 刷新

快速开始

一键部署(推荐)

docker run -d \
  --name docker-view \
  -p 9000:9000 \
  -v /var/run/docker.sock:/var/run/docker.sock \
  --restart unless-stopped \
  akbaji/docker-view:latest

打开 **http://localhost:9000**,首次访问创建管理员账号即可。

Docker Compose

git clone https://github.com/akbaji/docker-web-dashboard.git
cd docker-web-dashboard
docker compose up -d

从源码运行

需要 Node.js 18+

git clone https://github.com/akbaji/docker-web-dashboard.git
cd docker-web-dashboard
npm install
npm run web

配置

环境变量

变量 默认值 说明
PORT 9000 服务监听端口
TZ 系统时区 时区(如 Asia/Shanghai

多实例管理(DinD)

高级用户如需管理多个 Docker 环境,可参考 docker-compose.dind.yml,通过 Web 界面或 web/config/instances.json 配置:

{
  "default": "local",
  "instances": [
    { "id": "local", "name": "Local Docker", "type": "direct" },
    { "id": "dind-20", "name": "Docker 20 (DinD)", "type": "dind", "container": "my-docker-20" }
  ]
}

项目结构

web/
├── server.js              # 入口文件
├── lib/
│   ├── docker-adapter.js  # Docker 命令抽象(直连 + DinD)
│   ├── instance-manager.js# 多实例管理
│   ├── auth.js            # 基于 Session 的认证
│   ├── audit.js           # 审计日志(JSONL)
│   └── scheduler.js       # 定时任务引擎
├── routes/                # REST API 模块
│   ├── containers.js      # 容器 CRUD + 终端
│   ├── images.js          # 镜像构建/拉取/导出
│   ├── build.js           # 构建规则 & 流式日志
│   ├── compose.js         # Docker Compose 管理
│   ├── templates.js       # 一键部署模板
│   └── ...
└── public/                # 前端 SPA
    ├── app.js             # 应用逻辑
    ├── i18n.js            # 国际化(中/英)
    └── style.css          # 样式

许可证

MIT


English

A clean, fast Docker management dashboard built with vanilla JavaScript and Express. No heavy frameworks, no complex dependencies — just a single-page app that works.

Supports multi-instance management, including local Docker and Docker-in-Docker (DinD) environments.

Why Docker View?

Docker View Portainer Docker Desktop
Image Size ~150 MB ~300 MB ~1 GB+
Startup Time < 2s ~10s ~30s
Multi-Docker DinD support Swarm/K8s Single daemon
Chinese UI Native Partial No
Open Source MIT Zlib No

Features

  • Dashboard — Container/image/network/volume counts, disk usage, Docker engine info
  • Multi-Instance — Switch between local Docker and DinD containers seamlessly
  • Container — Start, stop, restart, delete; view logs, stats, files; web terminal; commit container changes as a new image
  • Image — Build, pull, export, import with real-time streaming progress
  • Compose — Manage Docker Compose projects: create from YAML, up/down/restart
  • Network & Volume — Create, delete, inspect, prune unused resources
  • Templates — 9 built-in templates (Docker DinD, nginx, mysql, redis, postgres, mongo, mariadb) with one-click deploy
  • Build System — Manage build rules, one-click builds with streaming logs, auto-export support
  • Resource Monitor — Real-time CPU/memory charts for all containers
  • Scheduled Tasks — Auto-cleanup dangling images, stopped containers, unused volumes
  • Auth & Audit — Login with role-based access (admin/viewer), full audit logging
  • i18n — English/Chinese with auto-detection
  • Keyboard ShortcutsEsc close, / search, Ctrl+1-9 switch views, r refresh

Quick Start

One Command (Recommended)

docker run -d \
  --name docker-view \
  -p 9000:9000 \
  -v /var/run/docker.sock:/var/run/docker.sock \
  --restart unless-stopped \
  akbaji/docker-view:latest

Open http://localhost:9000 — that's it. First visit will prompt you to create an admin account.

Docker Compose

git clone https://github.com/akbaji/docker-web-dashboard.git
cd docker-web-dashboard
docker compose up -d

From Source

Requires Node.js 18+

git clone https://github.com/akbaji/docker-web-dashboard.git
cd docker-web-dashboard
npm install
npm run web

Configuration

Environment Variables

Variable Default Description
PORT 9000 Server listen port
TZ System TZ Timezone (e.g. Asia/Shanghai)

Multi-Instance (DinD)

For advanced users managing multiple Docker environments, see docker-compose.dind.yml and configure instances via the web UI or web/config/instances.json:

{
  "default": "local",
  "instances": [
    { "id": "local", "name": "Local Docker", "type": "direct" },
    { "id": "dind-20", "name": "Docker 20 (DinD)", "type": "dind", "container": "my-docker-20" }
  ]
}

Architecture

web/
├── server.js              # Entry point
├── lib/
│   ├── docker-adapter.js  # Docker command abstraction (direct + DinD)
│   ├── instance-manager.js# Multi-instance management
│   ├── auth.js            # Session-based authentication
│   ├── audit.js           # Audit logging (JSONL)
│   └── scheduler.js       # Scheduled task engine
├── routes/                # REST API modules
│   ├── containers.js      # Container CRUD + terminal
│   ├── images.js          # Image build/pull/export
│   ├── build.js           # Build rules & streaming
│   ├── compose.js         # Docker Compose management
│   ├── templates.js       # One-click deploy templates
│   └── ...
└── public/                # Frontend SPA
    ├── app.js             # Application logic
    ├── i18n.js            # i18n (en/zh)
    └── style.css          # Styles

About

A lightweight, modern web dashboard for Docker management | 轻量级 Docker Web 管理面板

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages