轻量级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

相关推荐
七夜zippoe3 小时前
CANN Runtime任务描述序列化与持久化源码深度解码
大数据·运维·服务器·cann
金刚猿3 小时前
01_虚拟机中间件部署_root 用户安装 docker 容器,配置非root用户权限
docker·中间件·容器
JH_Kong4 小时前
解决 WSL 中 Docker 权限问题:从踩坑到完整修复
docker·容器
忆~遂愿4 小时前
GE 引擎与算子版本控制:确保前向兼容性与图重写策略的稳定性
大数据·开发语言·docker
Fcy6485 小时前
Linux下 进程(一)(冯诺依曼体系、操作系统、进程基本概念与基本操作)
linux·运维·服务器·进程
袁袁袁袁满5 小时前
Linux怎么查看最新下载的文件
linux·运维·服务器
代码游侠5 小时前
学习笔记——设备树基础
linux·运维·开发语言·单片机·算法
Harvey9035 小时前
通过 Helm 部署 Nginx 应用的完整标准化步骤
linux·运维·nginx·k8s
珠海西格电力科技6 小时前
微电网能量平衡理论的实现条件在不同场景下有哪些差异?
运维·服务器·网络·人工智能·云计算·智慧城市
释怀不想释怀7 小时前
Linux环境变量
linux·运维·服务器