使用 Docker 部署 WebTop 运行 Linux 系统

1)项目介绍

GitHub: https://github.com/linuxserver/docker-webtop

WebTop 它是一个基于 Linux ( Ubuntu 和 Alpine 两种版本)的轻量级容器,具有在浏览器中运行的完整桌面环境,具有基本的窗口管理器、像素完美的渲染分辨率、音频支持、剪贴板支持、屏幕键盘支持,以及用于上传/下载的远程文件管理。

2)功能特色

  • 像素渲染的完美分辨率
  • 基本的窗口管理器
  • 音频支持
  • 使用 RDP 协议
  • 剪贴板支持
  • 屏幕键盘支持
  • 远程文件上传/下载管理

3)项目部署

3.1)安装 Docker 软件

bash 复制代码
# 高版本 Docker 安装
curl -fsSL https://get.docker.com/ | sh
bash 复制代码
# 关闭防火墙
systemctl disable --now firewalld
setenforce 0
bash 复制代码
# 启用 Docker
systemctl enable --now docker

3.2)检查 Docker 服务

bash 复制代码
systemctl status docker

3.3)开启 IPv4 forwarding

bash 复制代码
echo "net.ipv4.ip_forward=1" >> /etc/sysctl.conf
systemctl restart network
sysctl net.ipv4.ip_forward

4)安装 Docker-compose

4.1)下载 Docker-Compose 软件包

bash 复制代码
下载 Docker-Compose 二进制包
curl -L https://github.com/docker/compose/releases/download/v2.2.2/docker-compose-linux-x86_64 -o /usr/local/bin/docker-compose

给文件增加执行权限
chmod +x /usr/local/bin/docker-compose

检查 Docker-Compose 版本
docker-compose -v

4.2)Docker-Compose 增加执行权限

bash 复制代码
chmod +x /usr/local/bin/docker-compose

4.3)检查 Docker-Compose 版本

bash 复制代码
docker-compose -v

5)在线部署

推荐用命令行 Docker-Cli 或者 Docker-Compose 安装

因为可以通过 shm_size 参数调整共享内存的大小,来达到优化效果。

5.1)创建目录

bash 复制代码
mkdir /docker/webtop -p;cd /docker/webtop

5.2)启用容器

bash 复制代码
docker run -d \
  --name=webtop \
  --privileged `#optional` \
  -e PUID=1000 \
  -e PGID=1000 \
  -e TZ=Asia/Shanghai \
  -e SUBFOLDER=/ `#optional` \
  -p 3000:3000 \
  -v /docker/webtop:/config \
  -v /var/run/docker.sock:/var/run/docker.sock `#optional` \
  --shm-size="2gb" `#optional` \
  --restart unless-stopped \
  linuxserver/webtop

5.3)验证容器

bash 复制代码
docker ps -a

6)访问验证

参考: https://blog.csdn.net/wbsu2004/article/details/120519093

使用浏览器访问 WebTop 前台 http://服务器IP地址:3000

注意: 默认 Alpine Xfce 桌面环境是不支持中文的

解决: 中文支持

bash 复制代码
# 进入容器
docker exec -it --user root webtop /bin/bash

# 安装 wget
apk --no-cache add ca-certificates wget 

# 安装公钥 
wget -q -O /etc/apk/keys/sgerrand.rsa.pub https://alpine-pkgs.sgerrand.com/sgerrand.rsa.pub 

# 下载字体
wget https://github.com/Fangyh09/font-ttf/raw/master/simsun.ttc

# 创建文件夹 
mkdir /usr/share/fonts/win

# 移动字库
mv simsun.ttc /usr/share/fonts/win

# 扫描字体目录并生成字体信息的缓存
fc-cache -vf

# 查看系统内所有中文字体及字体文件的路径
fc-list :lang=zh
bash 复制代码
docker restart webtop

刷新页面,原来的小方块已经可以正常显示了

大功告成~