KASM
简介
最近在翻linuxserver的时候发现有一部分镜像运行起来之后是通过VNC
连接可以直接拥有一个图形化界面的桌面,例如rdesktop和chrome。接着我发现了一个好玩的叫kasm,点进这个链接可以看到这里所有的镜像都是这个类型。
当我看到kasmweb
镜像里的这个动图的时候大概明白了,这不就是公司的云桌面吗:
再继续了解kasm
,大概知道了这是一个通过HTTP转发VNC的程序,并且Worker
是运行在容器里的,非常轻量。如上面的动图所示,点击chrome,kasm
自动创建一个chrome
的容器,点击ubuntu
也能自动创建一个ubuntu
的容器。
于是,今天花了一天时间来搭建Kasm Workspaces
搭建Kasm Workspaces
翻阅文档可以可知官方提供的安装方式:
1
2
3
4
5
6
7
| cd /tmp
curl -O https://kasm-static-content.s3.amazonaws.com/kasm_release_1.16.0.a1d5b7.tar.gz
curl -O https://kasm-static-content.s3.amazonaws.com/kasm_release_service_images_amd64_1.16.0.a1d5b7.tar.gz
curl -O https://kasm-static-content.s3.amazonaws.com/kasm_release_workspace_images_amd64_1.16.0.a1d5b7.tar.gz
curl -O https://kasm-static-content.s3.amazonaws.com/kasm_release_plugin_images_amd64_1.16.0.a1d5b7.tar.gz
tar -xf kasm_release_1.16.0.a1d5b7.tar.gz
sudo bash kasm_release/install.sh --offline-workspaces /tmp/kasm_release_workspace_images_amd64_1.16.0.a1d5b7.tar.gz --offline-service /tmp/kasm_release_service_images_amd64_1.16.0.a1d5b7.tar.gz --offline-plugin /tmp/kasm_release_plugin_images_amd64_1.16.0.a1d5b7.tar.gz
|
我这里用的是docker
安装:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
| services:
kasm:
image: lscr.io/linuxserver/kasm:1.16.0-develop
container_name: kasm
privileged: true
security_opt:
- apparmor:rootlesskit #optional
environment:
- KASM_PORT=8443
volumes:
- ./optdata:/opt
#- /dev/input:/dev/input #optional
ports:
- 3000:3000
- 8443:8443
|
容器运行后先打开3000端口设置账号密码,并且安装必要的插件。安装完打开8443端口就是这个界面了:
设置里有一些常用的镜像,甚至还能运行DOOM
:
运行Ubuntu Noble
这个应用, 可以从浏览器打开一个ubuntu desktop
并且有内置一些常见的工具:
如果用docker
运行kasm
的话就会发现整个应用是跑的docker in docker
:
不过目前来看,里面的大部分应用是不支持中文的,并且跑kasm
会占用掉我服务器2个G的内存,不太适合长期使用。