outlyernet/losslesscut!Docker镜像版本(最新语义化版本) 或任何VNC客户端访问。
LosslessCut
无损视频/音频编辑瑞士军刀
注意:本快速开始中提供的Docker命令仅为示例,参数应根据您的需求调整。
使用以下命令启动LosslessCut Docker容器:
shelldocker run -d \ --name=losslesscut \ -p 5800:5800 \ -v /path/to/data/losslesscut:/config:rw \ -v $HOME:/storage:rw \ outlyernet/losslesscut
其中:
/path/to/data/losslesscut:应用程序存储所有持久数据的位置。$HOME:包含需要被应用程序访问的主机文件的位置。通过[***]访问LosslessCut GUI。
主机文件在容器中显示为/storage文件夹下的内容。
注意:更多文档请参见基础镜像。
shelldocker run [-d] \ --name=losslesscut \ [-e <变量名>=<值>]... \ [-v <主机目录>:<容器目录>[:权限]]... \ [-p <主机端口>:<容器端口>]... \ outlyernet/losslesscut
| 参数 | 描述 |
|---|---|
| -d | 在后台运行容器。如果未设置,容器在前台运行。 |
| -e | 向容器传递环境变量。详见环境变量部分。 |
| -v | 设置卷映射(允许在主机和容器之间共享文件夹/文件)。详见数据卷部分。 |
| -p | 设置网络端口映射(将容器内部端口暴露给主机)。详见端口部分。 |
要自定义容器的某些属性,可通过-e参数传递以下环境变量(每个变量一个-e)。参数值格式为<变量名>=<值>。
| 变量名 | 描述 | 默认值 |
|---|---|---|
USER_ID | 应用程序运行的用户ID。详见用户/组ID以了解何时需要设置。 | 1000 |
GROUP_ID | 应用程序运行的组ID。详见用户/组ID以了解何时需要设置。 | 1000 |
SUP_GROUP_IDS | 应用程序的补充组ID,以逗号分隔的列表。 | "" |
UMASK | 控制新创建文件权限的掩码。掩码值为八进制表示。默认umask值为0022,表示新创建的文件对所有人可读,但仅所有者可写。详见在线umask计算器:[***] | 0022 |
LANG | 设置区域设置),定义应用程序的语言(如果支持)。区域设置格式为语言[_地区][.字符集],其中语言为ISO 639语言代码,地区为ISO 3166国家代码,字符集如UTF-8。例如,使用UTF-8编码的澳大利亚英语为en_AU.UTF-8。 | en_US.UTF-8 |
TZ | 容器使用的时区。也可通过在主机和容器之间映射/etc/localtime来设置时区。 | Etc/UTC |
KEEP_APP_RUNNING | 设置为1时,应用程序崩溃或终止时将自动重启。 | 0 |
APP_NICENESS | 应用程序运行的优先级。nice值为-20时优先级最高,19时最低。默认nice值为0。注意:负nice值(提高优先级)需要额外权限。此时容器应使用--cap-add=SYS_NICE选项运行。 | 0 |
INSTALL_PACKAGES | 容器启动时要安装的包,以空格分隔的列表。包从容器基于的Linux发行版的仓库安装。注意:安装覆盖现有容器文件(如二进制文件)的包可能影响容器功能。 | "" |
CONTAINER_DEBUG | 设置为1以启用调试日志。 | 0 |
DISPLAY_WIDTH | 应用程序窗口宽度(像素)。 | 1920 |
DISPLAY_HEIGHT | 应用程序窗口高度(像素)。 | 1080 |
DARK_MODE | 设置为1时,启用应用程序的深色模式。 | 0 |
SECURE_CONNECTION | 设置为1时,使用加密连接访问应用程序GUI(通过Web浏览器或VNC客户端)。详见安全部分。 | 0 |
SECURE_CONNECTION_VNC_METHOD | 用于安全VNC连接的方法。可能值为SSL或TLS。详见安全部分。 | SSL |
SECURE_CONNECTION_CERTS_CHECK_INTERVAL | 系统验证Web或VNC证书是否更改的间隔(秒)。检测到更改时,受影响的服务将自动重启。值为0时禁用检查。 | 60 |
WEB_LISTENING_PORT | Web服务器用于提供应用程序UI的端口。此端口在容器内部使用,通常无需更改。默认情况下,容器使用默认桥接网络,要使内部端口可访问,需将其映射到外部端口(使用-p或--publish参数)。但如果容器使用其他网络类型,更改容器端口可能有助于避免与其他服务/容器冲突。注意:值为-1时禁用监听,即无法通过HTTP/HTTPS访问应用程序UI。 | 5800 |
VNC_LISTENING_PORT | VNC服务器用于提供应用程序UI的端口。此端口在容器内部使用,通常无需更改。默认情况下,容器使用默认桥接网络,要使内部端口可访问,需将其映射到外部端口(使用-p或--publish参数)。但如果容器使用其他网络类型,更改容器端口可能有助于避免与其他服务/容器冲突。注意:值为-1时禁用监听,即无法通过VNC访问应用程序UI。 | 5900 |
VNC_PASSWORD | 连接应用程序GUI所需的密码。详见VNC密码部分。 | "" |
ENABLE_CJK_FONT | 设置为1时,安装开源字体文泉驿正黑。该字体包含大量中/日/韩字符。 | 0 |
下表描述了容器使用的数据卷。通过-v参数设置映射,格式为<主机目录>:<容器目录>[:权限]。
| 容器路径 | 权限 | 描述 |
|---|---|---|
/config | rw | 应用程序存储配置、状态、日志和任何需要持久化的文件的位置。 |
/storage | rw | 包含需要被应用程序访问的主机文件的位置。 |
以下是容器使用的端口列表。可通过-p参数映射到主机(每个端口映射一个-p)。映射格式为<主机端口>:<容器端口>。容器内部端口不可更改,但可自由使用主机上的任何端口。
| 端口 | 主机映射 | 描述 |
|---|---|---|
| 5800 | 可选 | 通过Web界面访问应用程序GUI的端口。如果不需要Web界面访问,映射到主机是可选的。对于不使用默认桥接网络的容器,可通过WEB_LISTENING_PORT环境变量更改端口。 |
| 5900 | 可选 | 通过VNC协议访问应用程序GUI的端口。如果不需要VNC协议访问,映射到主机是可选的。对于不使用默认桥接网络的容器,可通过VNC_LISTENING_PORT环境变量更改端口。 |
环境变量、卷和端口映射都是在创建容器时指定的。
以下步骤描述了添加、删除或更新现有容器参数的方法。基本思路是销毁并重新创建容器:
docker stop losslesscut
docker rm losslesscut
docker run命令创建/启动容器,根据需要调整参数。注意:由于所有应用程序数据都保存在/config容器文件夹下,销毁并重新创建容器不会导致数据丢失,应用程序将恢复到相同状态(只要/config文件夹的映射保持不变)。
以下是可与Docker Compose一起使用的docker-compose.yml文件示例。
请根据需要调整。注意示例中仅包含必要的网络端口。
yamlversion: '3' services: losslesscut: image: outlyernet/losslesscut ports: - "5800:5800" # Web UI volumes: - "./losslesscut:/config:rw" - "$HOME:/storage:rw" environment: DARK_MODE: "1" SECURE_CONNECTION: "1"
每个Docker镜像版本使用语义化版本,与捆绑的LosslessCut版本匹配。还提供主版本和主.次版本的额外标签。如果镜像更新,将添加-v<数字>后缀表示新版本。
示例标签:
| 标签 | 解释 |
|---|---|
:latest | 始终指向最新镜像 |
:3.47.1 | LosslessCut v3.47.1版本 |
:3.47 | LosslessCut v3.47.x的最新镜像 |
:3 | LosslessCut v3.x.y的最新镜像 |
:3.47-v1 | LosslessCut v3.47.x的第一个镜像版本 |
使用数据卷(-v标志)时,主机和容器之间可能出现权限问题。例如,容器内的用户可能在主机上不存在,这可能导致主机无法正确访问共享卷上的文件和文件夹。
为避免问题,可指定应用程序运行的用户。通过USER_ID和GROUP_ID环境变量将用户ID和组ID传递给容器。
要查找主机上数据卷所有者的正确ID,在主机上执行以下命令:
shell$ id <用户名>
输出类似:
uid=1000(myuser) gid=1000(myuser) groups=1000(myuser),4(adm),24(cdrom),27(sudo),46(plugdev),113(lpadmin)
uid(用户ID)和gid(组ID)的值应提供给容器。
假设容器端口映射到主机的相同端口,可通过以下方式访问应用程序的图形界面:
http://<主机IP地址>:5800
<主机IP地址>:5900
默认情况下,应用程序GUI通过未加密连接(HTTP或VNC)访问。
可通过SECURE_CONNECTION环境变量启用安全连接。详见环境变量部分了解如何设置环境变量。
启用后,通过浏览器访问时应用程序GUI通过HTTPS连接进行,所有HTTP访问自动重定向到HTTPS。
使用VNC客户端时,VNC连接通过SSL进行。注意,少数VNC客户端支持此方法,SSVNC是其中之一。
以下是容器所需的加密证书文件。默认情况下,缺少证书时会生成并使用自签名证书。所有文件均为PEM编码的x509证书。
| 容器路径 | 用途 | 内容 |
|---|---|---|
/config/certs/vnc-server.pem | VNC连接加密。 | VNC服务器的私钥和证书,以及任何根证书和中间证书。 |
/config/certs/web-privkey.pem | HTTPS连接加密。 | Web服务器的私钥。 |
/config/certs/web-fullchain.pem | HTTPS连接加密。 | Web服务器的证书,以及任何根证书和中间证书。 |
注意:要避免浏览器或VNC客户端出现证书有效性警告/错误,请确保提供自己的有效证书。
注意:系统会监控证书文件,检测到更改时自动重启受影响的服务。
要限制对应用程序的访问,可指定密码。有两种方法:
VNC_PASSWORD环境变量。/config卷的根目录创建.vncpass_clear文件,文件中包含明文密码。容器启动时,文件内容将被加密并移动到.vncpass。VNC密码提供的安全级别取决于两点:
使用VNC密码时,强烈建议启用安全连接,以防止密码在未加密通道中明文传输。
注意:密码限制为8个字符。此限制来自远程帧缓冲协议RFC(见7.2.2节)。超过限制的任何字符将被忽略。
要获取运行中容器的Shell访问,执行以下命令:
shelldocker exec -ti CONTAINER sh
其中CONTAINER是创建容器时使用的ID或名称(例如losslesscut)。
容器使用遇到问题或有疑问?请创建新issue。
有关jlesage的其他Docker化应用程序,参见[***]
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
在 Linux 系统配置镜像服务
在 Docker Desktop 配置镜像
Docker Compose 项目配置
Kubernetes 集群配置 Containerd
K3s 轻量级 Kubernetes 镜像加速
VS Code Dev Containers 配置
MacOS OrbStack 容器配置
在宝塔面板一键配置镜像
Synology 群晖 NAS 配置
飞牛 fnOS 系统配置镜像
极空间 NAS 系统配置服务
爱快 iKuai 路由系统配置
绿联 NAS 系统配置镜像
QNAP 威联通 NAS 配置
Podman 容器引擎配置
HPC 科学计算容器配置
ghcr、Quay、nvcr 等镜像仓库
无需登录使用专属域名
需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单
免费版仅支持 Docker Hub 访问,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等;免费版仅支持 docker.io。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
来自真实用户的反馈,见证轩辕镜像的优质服务