一款基于 Linuxserver.io 的 KasmVNC 基础镜像以及百度网盘官方客户端的 Docker 镜像,支持 amd64 和 arm64 架构。
该镜像部署了百度网盘桌面应用程序,并通过浏览器中的 KasmVNC 服务器提供其界面。该接口位于 http://your-ip:8080
或者 https://your-ip:8181
。
默认情况下,主 GUI 没有设置密码。可选环境变量 PASSWORD
将允许为用户 abc
设置 http auth 密码。
该容器基于 Docker Baseimage KasmVNC,这意味着有额外的环境变量和运行配置来启用或禁用特定功能。
Variable | Description |
---|---|
CUSTOM_PORT | 容器侦听 http 的内部端口(如果需要更改默认的 8080 端口)。 |
CUSTOM_HTTPS_PORT | 容器侦听 https 的内部端口(如果需要更改默认的 8181 端口)。 |
CUSTOM_USER | HTTP 基本身份验证用户名,默认为 abc。 |
PASSWORD | HTTP 基本身份验证密码,默认为 abc。如果未设置,则不会进行身份验证 |
SUBFOLDER | 应用程序的 subfolder 参数(如果为容器运行了子文件夹反向代理),需要使用两个斜线包裹 例如: /subfolder/ |
TITLE | Web 浏览器上显示的页面标题,默认为 “KasmVNC Client”。 |
FM_HOME | 这是文件管理器的主目录(默认主目录),默认为“/config”。 |
START_DOCKER | 如果设置为 false,具有特权的容器将不会自动启动 DinD Docker 设置。 |
DRINODE | 如果在 /dev/dri 中挂载了支持硬件加速的 GPU 设备(详见:DRI3 GPU Acceleration),这个变量允许您指定设备,例如: /dev/dri/renderD128 |
LC_ALL | 设置容器中运行的语言,例如:zh_CN.UTF-8 en_US.UTF-8 |
NO_DECOR | 如果设置,应用程序将在没有窗口边框的情况下运行,以用作 PWA。 |
NO_FULL | 使用 openbox 时不要自动全屏应用程序。 |
Variable | Description |
---|---|
--privileged |
将在容器内启动 Docker in Docker (DinD) 设置,以便在隔离环境中使用 docker。为了提高性能,可以将容器内的 Docker 目录挂载到主机,例如:-v /home/user/docker-data:/var/lib/docker 。 |
-v /var/run/docker.sock:/var/run/docker.sock |
安装在主机的 Docker 套接字中,以通过 CLI 与其交互或使用支持 Docker 的应用程序。 |
--device /dev/dri:/dev/dri |
将 GPU 安装到容器中,这可以与 DRINODE 环境变量结合使用,以利用主机显卡来实现 GPU 加速应用程序。仅支持开源驱动程序,例如:(Intel、AMDGPU、Radeon、ATI、Nouveau) |
通过将流质量预设更改为“Extreme”,该容器能够以高帧速率向您的 Web 浏览器提供真正的无损图像,更多信息请参见此处。为了从非 localhost 端点使用此模式,需要使用 8181 上的 HTTPS 端口。如果使用端口 8080 的反向代理,则需要按照此处所述设置特定标头。.
为了帮助您开始从此镜像创建容器,您可以使用 docker-compose 或 docker cli。
---
services:
baidunetdisk:
image: docker.io/yucatovo/baidunetdisk-docker:latest
container_name: baidunetdisk
security_opt:
- seccomp:unconfined #可选
environment:
- PUID=1000
- PGID=1000
- TZ=Asia/Shanghai
- PASSWORD= #可选
- CLI_ARGS= #可选
volumes:
- /配置文件位置:/config/
- /下载位置:/config/baidunetdiskdownload
ports:
- 8080:8080
- 8181:8181
restart: unless-stopped
docker run -d \
--name=baidunetdisk \
--security-opt seccomp=unconfined `#可选` \
-e PUID=1000 \
-e PGID=1000 \
-e TZ=Asia/Shanghai \
-e PASSWORD= `#可选` \
-e CLI_ARGS= `#可选` \
-p 8080:8080 \
-p 8181:8181 \
-v /配置文件位置:/config \
-v /下载位置:/config/baidunetdiskdownload \
--restart unless-stopped \
docker.io/yucatovo/baidunetdisk-docker:latest
podman run -d \
--name=baidunetdisk \
-e PUID=1000 \
-e PGID=1000 \
-e TZ=Asia/Shanghai \
-e PASSWORD= `#可选` \
-e CLI_ARGS= `#可选` \
-p 8080:8080 \
-p 8181:8181 \
-p 8081:8081 \
-v /配置文件位置:/config \
-v /下载位置:/config/baidunetdiskdownload \
--restart unless-stopped \
docker.io/yucatovo/baidunetdisk-docker:latest
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: baidunetdisk-deployment
annotations:
io.containers.autoupdate: registry
spec:
replicas: 1
selector:
matchLabels:
app: baidunetdisk
template:
metadata:
labels:
app: baidunetdisk
spec:
restartPolicy: always
containers:
- name: baidunetdisk
image: docker.io/yucatovo/baidunetdisk-docker:latest
volumeMounts:
- name: config-path
mountPath: /config/
- name: download-path
mountPath: /config/baidunetdiskdownload/
ports:
- containerPort: 8080
hostPort: 8080
protocol: TCP
- containerPort: 8181
hostPort: 8181
protocol: TCP
env:
- name: TZ
value: "Asia/Shanghai"
- name: DRINODE # 可选
value: "/dev/dri/renderD128"
volumes:
- name: config-path
hostPath:
path: /配置文件位置
type: Directory
- name: download-path
hostPath:
path: /下载位置
type: Directory
/etc/containers/containers.conf.d/
添加配置(详见:containers.conf.5):
[containers]
devices = ["/dev/dri/card1:rwm","/dev/dri/renderD128:rwm"]
Failed to close file descriptor for child process (Operation not permitted)
的错误,请使用 --security-opt seccomp=unconfined
启动(来源),可能会有安全问题。PUID
和 PGID
变量的时候会默认使用 911
作为运行用户和组 ID,请确认用户权限正确。同时也感谢参与反馈与测试的所有人