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

相关推荐
实心儿儿44 分钟前
Linux —— 基础开发工具4
linux·运维·服务器
一尘之中1 小时前
Linux命令行查看磁盘大小完全指南
linux·运维·ai写作
马儿能够一直跑1 小时前
同一个环境中安装两个不同版本esp-idf的python冲突解决方案
linux·运维·服务器
vortex51 小时前
从 Scoop 故障看 Windows 与 Linux 软硬链接与权限机制的底层差异
linux·运维·windows
Felven2 小时前
盛科工业千兆网交换机端口计数查看
运维·网络·盛科交换机
橘颂TA2 小时前
【Linux】System V 通信——共享内存
linux·运维·服务器·c++
程序员果子2 小时前
零拷贝:程序性能加速的终极奥秘
linux·运维·nginx·macos·缓存·centos
杨浦老苏3 小时前
安全的消息传递和协作工具Virola Messenger
docker·即时通讯·群晖·im
天生励志1233 小时前
Nginx安装部署
运维·nginx
檀越剑指大厂3 小时前
【Linux系列】Linux中的复制与迁移
linux·运维·服务器