本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com
Kasm Workspaces 是一个 Docker 容器流式传输平台,用于提供基于浏览器的桌面、应用程序和 Web 服务访问。Kasm 利用 DevOps 支持的容器化桌面基础设施 (CDI) 创建按需、一次性的 Docker 容器,可通过 Web 浏览器访问。典型用例包括远程浏览器隔离 (RBI)、数据防泄漏 (DLP)、桌面即服务 (DaaS)、安全远程访问服务 (RAS) 和开源情报 (OSINT) 收集。
图形化容器的渲染由开源项目 KasmVNC 提供支持。
该镜像利用 Docker 清单实现多平台支持。只需拉取 lscr.io/linuxserver/kasm:latest 即可获取适合您架构的正确镜像,也可通过标签拉取特定架构的镜像。
支持的架构:
| 架构 | 可用 | 标签 |
|---|---|---|
| x86-64 | ✅ | amd64-<version tag> |
| arm64 | ✅ | arm64v8-<version tag> |
此容器使用 Docker in Docker,需要以 privileged(特权)模式运行。容器初始设置需通过 3000 端口进行。
与其他容器不同,Web 界面端口(默认 443)需要通过环境变量 KASM_PORT 设置,且内部和外部端口需保持一致,例如使用 4443 端口时,需设置 KASM_PORT=4443 并映射 -p 4443:4443
Unraid 用户注意:由于 DinD 存储层限制,/opt/ 应直接挂载到磁盘(如 /mnt/disk1/appdata/path),或最优选择挂载到缓存磁盘(如 /mnt/cache/appdata/path)
通过 https://您的 IP:3000 访问安装向导并按照说明操作。设置完成后,通过 https://您的 IP:443 访问,使用设置过程中输入的凭据登录。默认用户如下:
目前不支持群晖系统,因为其内核阻止 CPU 调度。
要更新 Kasm,首先确保使用最新的 Docker 镜像,然后在管理面板中执行应用内更新。仅更新 Docker 镜像和重新创建容器不会更新 Kasm。
安装过程中会提供一个选项,强制所有工作区容器挂载并使用特定 GPU。如果使用 NVIDIA GPU,需传递 -e NVIDIA_VISIBLE_DEVICES=all 或 --gpus all,并在主机上安装 NVIDIA Container Runtime。此外,Kasm Workspaces 对 NVIDIA 有原生支持,您也可选择使用该原生支持而非安装时的手动覆盖。
要正确创建虚拟游戏手柄,需从主机挂载 /dev/input 和 /run/udev/data。有关启用游戏手柄支持的说明,请参见此处。
要在工作区中使用持久化配置文件,需从主机挂载一个文件夹到 /profiles。配置工作区时,可将“持久化配置文件路径”设置为例如 /profiles/ubuntu-focal/{username}/,更多信息见此处。
SWAG 的示例配置可在此处找到。安装后,需按照此处所述,将默认区域下的“代理端口”设置修改为 0,以启动工作区会话。
此镜像默认使用自签名证书,因此协议为 https。如果使用验证证书的反向代理,需禁用对容器的证书检查。
以下提供 docker-compose 和 docker cli 两种方式帮助您创建容器。
[!NOTE] 除非参数标记为“可选”,否则均为必填项,必须提供值。
--- services: kasm: image: lscr.io/linuxserver/kasm:latest container_name: kasm privileged: true security_opt: - apparmor:rootlesskit #可选 environment: - KASM_PORT=443 - DOCKER_HUB_USERNAME=USER #可选 - DOCKER_HUB_PASSWORD=PASS #可选 - DOCKER_MTU=1500 #可选 volumes: - /path/to/kasm/data:/opt - /path/to/kasm/profiles:/profiles #可选 - /dev/input:/dev/input #可选 - /run/udev/data:/run/udev/data #可选 ports: - 3000:3000 - 443:443 restart: unless-stopped
docker run -d \ --name=kasm \ --privileged \ --security-opt apparmor=rootlesskit `#可选` \ -e KASM_PORT=443 \ -e DOCKER_HUB_USERNAME=USER `#可选` \ -e DOCKER_HUB_PASSWORD=PASS `#可选` \ -e DOCKER_MTU=1500 `#可选` \ -p 3000:3000 \ -p 443:443 \ -v /path/to/kasm/data:/opt \ -v /path/to/kasm/profiles:/profiles `#可选` \ -v /dev/input:/dev/input `#可选` \ -v /run/udev/data:/run/udev/data `#可选` \ --restart unless-stopped \ lscr.io/linuxserver/kasm:latest
容器通过运行时传递的参数进行配置,格式为 <外部>:<内部>。例如,-p 8080:80 表示将容器内的 80 端口映射到主机的 8080 端口。
| 参数 | 功能 |
|---|---|
-p 3000:3000 | Kasm 安装向导端口(https)。 |
-p 443:443 | Kasm Workspaces 界面端口(https)。 |
-e KASM_PORT=443 | 指定 Kasm Workspaces 绑定到外部的端口。 |
-e DOCKER_HUB_USERNAME=USER | 可选,指定用于拉取私有镜像的 DockerHub 用户名。 |
-e DOCKER_HUB_PASSWORD=PASS | 可选,指定用于拉取私有镜像的 DockerHub 密码。 |
-e DOCKER_MTU=1500 | 可选,指定传递给 dockerd 的 mtu 选项。 |
-v /opt | Docker 和安装存储路径。 |
-v /profiles | 可选,指定持久化配置文件存储路径。 |
-v /dev/input | 可选,用于游戏手柄支持。 |
-v /run/udev/data | 可选,用于游戏手柄支持。 |
--security-opt apparmor=rootlesskit | 部分主机需要此选项,以确保 DinD 层内的命名空间正常工作。 |
您可以通过特殊前缀 FILE__ 从文件设置任何环境变量。例如:
-e FILE__MYVAR=/run/secrets/mysecretvariable
这会根据 /run/secrets/mysecretvariable 文件的内容设置环境变量 MYVAR。
我们的所有镜像都支持使用可选的 -e UMASK=022 设置来覆盖容器内服务的默认 umask。请注意,umask 不是 chmod,它基于其值减去权限而非添加。请在请求支持前阅读此处了解更多信息。
我们发布了各种 Docker Mods 以启用容器内的附加功能。上述动态徽章可访问此镜像的可用 Mods 列表(如有)以及可应用于任何 LinuxServer 镜像的通用 Mods。
容器运行时的 Shell 访问:
docker exec -it kasm /bin/bash
实时监控容器日志:
docker logs -f kasm
容器版本号:
docker inspect -f '{{ index .Config.Labels "build_version" }}' kasm
镜像版本号:
docker inspect -f '{{ index .Config.Labels "build_version" }}' lscr.io/linuxserver/kasm:latest
我们的大多数镜像都是静态的、版本化的,需要更新镜像并重新创建容器才能更新内部应用。除了相关 readme.md 中注明的例外情况,我们不建议或支持在容器内更新应用。请参阅上面的应用设置部分,了解是否推荐对此镜像进行应用更新。
以下是更新容器的说明:
更新镜像:
所有镜像:
docker-compose pull
单个镜像:
docker-compose pull kasm
更新容器:
所有容器:
docker-compose up -d
单个容器:
docker-compose up -d kasm
还可以删除旧的悬空镜像:
docker image prune
更新镜像:
docker pull lscr.io/linuxserver/kasm:latest
停止运行中的容器:
docker stop kasm
删除容器:
docker rm kasm
使用上述相同的 docker run 参数重新创建新容器(如果正确映射到主机文件夹,您的 /config 文件夹和设置将被保留)
还可以删除旧的悬空镜像:
docker image prune
[!TIP] 我们推荐使用 Diun 获取更新通知。不建议或支持使用其他自动无人值守更新容器的工具。
如果您想为开发目的对这些镜像进行本地修改或自定义逻辑:
git clone [***] cd docker-kasm docker build \ --no-cache \ --pull \ -t lscr.io/linuxserver/kasm:latest .
可以使用 lscr.io/linuxserver/qemu-static 在 x86_64 硬件上构建 ARM 变体,反之亦然:
docker run --rm --privileged lscr.io/linuxserver/qemu-static --reset
注册后,可以使用 -f Dockerfile.aarch64 指定要使用的 dockerfile。

免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录方式配置轩辕镜像加速服务,包含7个详细步骤
在 Linux 系统上配置轩辕镜像源,支持主流发行版
在 Docker Desktop 中配置轩辕镜像加速,适用于桌面系统
在 Docker Compose 中使用轩辕镜像加速,支持容器编排
在 k8s 中配置 containerd 使用轩辕镜像加速
在宝塔面板中配置轩辕镜像加速,提升服务器管理效率
在 Synology 群晖NAS系统中配置轩辕镜像加速
在飞牛fnOS系统中配置轩辕镜像加速
在极空间NAS中配置轩辕镜像加速
在爱快ikuai系统中配置轩辕镜像加速
在绿联NAS系统中配置轩辕镜像加速
在威联通NAS系统中配置轩辕镜像加速
在 Podman 中配置轩辕镜像加速,支持多系统
配置轩辕镜像加速9大主流镜像仓库,包含详细配置步骤
无需登录即可使用轩辕镜像加速服务,更加便捷高效
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429