轻量级Docker管理工具Docker Switchboard

简介

什么是 Docker Switchboard ?

Docker Switchboard 是一个轻量级的 Web 应用程序,用于管理 Docker 容器。它提供了一个干净、用户友好的界面来启动、停止和监控主机上运行的容器,使其成为本地开发、家庭实验室或小型服务器设置的理想选择。

主要特点

  1. 容器管理:能够查看所有运行和停止的容器。
  2. 一键操作:支持一键启动和停止容器。
  3. 状态自动刷新:容器状态自动刷新,确保信息实时更新。
  4. 正则表达式过滤:可根据正则表达式过滤显示的容器,方便管理。
  5. 简单配置 :通过 YAML 文件进行简单的配置,易于上手。
  6. 轻量级 :镜像大小不到 7MB,页面大小约 50kB

应用场景

  • 本地开发 :开发者可以快速管理 Docker 容器,无需使用命令行。
  • 家庭实验室:适合家庭用户在本地实验和测试应用程序。
  • 小型服务器部署:为小型服务器提供简单的容器管理解决方案。

Docker Switchboard 并非旨在取代 PortainerRancher 等高级容器管理解决方案。相反,它提供了一种快速、轻松的方式来控制您的容器,而无需命令行。

安装

在群晖上以 Docker 方式安装。

在注册表中搜索 cfstcyr ,选择第一个 cfstcyr/docker-switchboard,版本选择 latest

本文写作时, latest 版本对应为 v1.2.0

/var/run/docker.sock

与容器相关的应用,都需要绑定挂载 /var/run/docker.sock ,包括我们之前安装的 portainerwatchtowerGlancesNetdata 等。

什么是 /var/run/docker.sock ?

/var/run/docker.sockDocker API 的主要入口,简单地说,它是 Docker 守护进程(Docker daemon)默认监听的 Unix 域套接字(Unix domain socket),容器中的进程可以通过它与 Docker 守护进程进行通信。

图片来自:https://betterprogramming.pub/about-var-run-docker-sock-3bfd276e12fd

但是群晖的 Docker 管理器并不支持挂载 /var/run/docker.sock 文件,所以这次我们需用命令行来安装

app.yaml

配置文件包含以下字段

变量 描述 缺省值
refresh_interval 刷新容器列表的间隔(以秒为单位) 5
container_match 用于匹配容器名称的正则表达式模式(仅显示匹配项) .*

将下面的内容保存到 app.yaml

yaml 复制代码
refresh_interval: 5
container_match: ".*"

docker cli 安装

如果你熟悉命令行,可能用 docker cli 更快捷

bash 复制代码
# 新建文件夹 switchboard 和 子目录
mkdir -p /volume1/docker/switchboard

# 进入 switchboard 目录
cd /volume1/docker/switchboard

# 将 app.yaml 放入当前目录

# 运行容器
docker run -d \
   --restart unless-stopped \
   --name switchboard \
   -p 8250:8080 \
   -v $(pwd)/app.yaml:/config/app.yaml \
   -v /var/run/docker.sock:/var/run/docker.sock \
   cfstcyr/docker-switchboard

docker-compose 安装

也可以用 docker-compose 安装,将下面的内容保存为 docker-compose.yml 文件

yaml 复制代码
version: '3'

services:
  switchboard:
    image: cfstcyr/docker-switchboard
    container_name: switchboard
    restart: unless-stopped
    ports:
      - 8250:8080
    volumes:
      - ./app.yaml:/config/app.yaml # Optional
      - /var/run/docker.sock:/var/run/docker.sock

然后执行下面的命令

bash 复制代码
# 新建文件夹 switchboard 和 子目录
mkdir -p /volume1/docker/switchboard

# 进入 switchboard 目录
cd /volume1/docker/switchboard

# 将 docker-compose.yml 和 app.yaml 放入当前目录

# 一键启动
docker-compose up -d

运行

在浏览器中输入 http://群晖IP:8250 就能看到主界面

使用很简单,看官方的动图

界面太朴素了,这点不如 Fastdock

参考文档

cfstcyr/docker-switchboard

地址:https://github.com/cfstcyr/docker-switchboard

相关推荐
秃头菜狗2 分钟前
各个主要目录的功能 / Linux 常见指令
linux·运维·服务器
棠十一20 分钟前
Rabbitmq
分布式·docker·rabbitmq
jiunian_cn1 小时前
【Linux】centos软件安装
linux·运维·centos
藥瓿亭2 小时前
K8S认证|CKS题库+答案| 6. 创建 Secret
运维·ubuntu·docker·云原生·容器·kubernetes·cks
2302_809798322 小时前
【JavaWeb】Docker项目部署
java·运维·后端·青少年编程·docker·容器
嵌入式大圣2 小时前
Neko虚拟浏览器远程协作方案:Docker+内网穿透技术部署实践
运维·docker·容器
dmy2 小时前
n8n内网快速部署
运维·人工智能·程序员
程序员JerrySUN2 小时前
全面理解 Linux 内核性能问题:分类、实战与调优策略
java·linux·运维·服务器·单片机
米粉03053 小时前
深入剖析Nginx:从入门到高并发架构实战
java·运维·nginx·架构
huangyuchi.3 小时前
【Linux】LInux下第一个程序:进度条
linux·运维·服务器·笔记·进度条·c/c++