大家好,我是小明同学。

玩 Docker 的朋友,大概分为两派。

一派是“命令行原教旨主义者”,黑框框里敲代码,觉得特极客,但一旦容器多了,改个参数能把人累死;

另一派是“Portainer 忠实信徒”,功能那是真强大,强大到像开了一艘航母去买菜——有时候我只是想改个端口映射,它那一层层的菜单看得我脑壳疼。

我就一直在想:有没有那种,既有图形界面的直观,又能像代码一样干净利落的工具?

最近,那个开发了神级监控工具 Uptime Kuma 的大佬(Louis Lam),带着他的新作品 Dockge 来了。

项目地址:https://github.com/louislam/dockge

image.png

我替大家试了毒,结论只有两个字:丝滑。

今天就聊聊,为什么建议你把手里的 Docker 管理工具,换成 Dockge。

01

它是真的在“管理文件”,而不是“接管系统”

很多新手用 Portainer 最大的痛点是什么?是你用它创建的容器,配置都被藏在它的数据库里。一旦 Portainer 挂了,或者你想迁移数据,那就很麻烦。

Dockge 的逻辑完全不同,它非常 “克制”。

它的核心理念是:基于 compose.yaml 文件。

你在 Dockge 的界面上创建一个服务,它实际上是在你的硬盘里实实在在地生成了一个文件夹和一个 yaml 文件。

  • 你在界面上改配置,文件会自动更新。
  • 你去后台用 vim 改文件,界面也会实时刷新。

这种 “所见即所得” 的安全感,对于稍微懂点技术的玩家来说,简直太治愈了。你完全不用担心被工具“绑架”,工具只是你的帮手,数据依然完全掌握在你手里。

02

“神级功能”:docker run 自动转 Compose

这绝对是 Dockge 的杀手锏,没有之一。

我们在网上找教程,或者去 GitHub 找项目部署,通常作者给的都是一行长长的 docker run 命令。

以前我们要么直接复制进终端跑(以后很难维护),要么这就得去这就得去翻文档,手动把它翻译成 Docker Compose 的格式,缩进搞错一点就报错。

在 Dockge 里,你只需要把那行 docker run 命令往输入框里一粘贴。

啪!很快啊!

它自动就给你转换成了标准的 docker.yaml 格式,端口、环境变量、挂载路径,整整齐齐地列在右边。

那一刻,我真的感觉到了对懒人的极致关怀。

03

颜值即正义,交互更顺手

如果你用过 Uptime Kuma,你就知道这个作者的审美一直在线。

Dockge 的界面非常现代化(Reactive UI),响应极快。左边是容器列表,右边是控制台和编辑器。

它甚至内置了一个网页版的终端。你需要进容器内部查看日志,或者执行个命令,直接在网页上就能操作,完全不需要再打开 SSH 客户端。

而且,它支持多代理(Agent)模式。也就是说,如果你有好几台服务器(VPS 或 NAS),你可以在一个 Dockge 界面里管理所有机器上的 Docker 容器。

04

怎么装?简单到令人发指

既然是管理 Docker 的工具,它自己当然也是用 Docker 部署的。

在你想要安装的目录(比如 /opt/stacks),创建一个目录给它,然后运行下面的命令:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
# compose.yaml
services:
dockge:
image: louislam/dockge:1
restart: unless-stopped
ports:
- 5001:5001
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- ./data:/app/data
# 这里一定要注意,把你的 stack 目录映射进去
- /opt/stacks:/opt/stacks
environment:
- DOCKGE_STACKS_DIR=/opt/stacks

如果无法下载compose.yaml文件,创建compose.yaml并复制上面的内容到compose.yaml文件中

1
2
3
4
5
6
7
8
9
10
11
12
# Create directories that store your stacks and stores Dockge's stack
mkdir -p /opt/stacks /opt/dockge
cd /opt/dockge

# Download the compose.yaml
curl https://raw.githubusercontent.com/louislam/dockge/master/compose.yaml --output compose.yaml

# Start the server
docker compose up -d

# If you are using docker-compose V1 or Podman
# docker-compose up -d

image.png

启动之后,访问 http://IP:5001,创建一个账号,你就可以开始享受丝滑了。

05

实际上手操作

image.png
以青龙面板为例,我们进行演示
1.docker run 自动转 Compose
image.png
image.png 2.点击进行部署
image.png
image.png 3.点击Bash,进入容器
image.png
image.png
4.Dockge代理
image.png

写在最后

工具这东西,没有最好的,只有最顺手的。

如果你是企业级用户,需要精细的权限管理和集群编排,那 Portainer 依然是老大哥。

但如果你像我一样,是个 HomeLab 玩家、NAS 用户,或者只是想管好自己那几台 VPS,Dockge 这种“轻量、直观、不越权”的工具,绝对是目前的最佳选择。

少折腾工具,多享受服务。

这,才是玩技术的初衷嘛。

你现在主要用什么方式管理 Docker?命令行、Portainer 还是群晖/威联通/极空间自带的界面?评论区来聊聊你的“血泪史”。

好了,以上就是今天给大家分享的内容,我是爱分享的小明同学,如果今天的内容对你有帮助请记得收藏,顺便点点关注,咱们下期再见!谢谢大家~

(本文纯属技术分享,无利益相关,喜欢这类神器推荐的话,点个在看鼓励一下)