Skip to content

Docker 部署

Docker 是运行 Rust-Srec 最简单且推荐的方式。

前置要求

快速开始

一键安装 (Linux/macOS)

运行以下命令自动安装配置 Rust-Srec:

bash
curl -fsSL https://docs.srec.rs/docker-install-zh.sh | bash

一键安装 (Windows PowerShell)

powershell
irm https://docs.srec.rs/install.ps1 | iex

脚本会自动完成:

  • 下载配置文件
  • 生成安全密钥
  • 可选择立即启动应用

自定义安装

脚本会自动检测系统语言并选择中文版或英文版。你也可以通过环境变量自定义安装:

Linux/macOS:

bash
# 安装开发版到自定义目录
RUST_SREC_DIR=/opt/rust-srec VERSION=dev curl -fsSL https://docs.srec.rs/docker-install-zh.sh | bash

Windows PowerShell:

powershell
# 安装开发版到自定义目录 (强制使用中文版)
$env:SREC_LANG = "zh"; $env:RUST_SREC_DIR = "C:\rust-srec"; $env:VERSION = "dev"; irm https://docs.srec.rs/install.ps1 | iex
变量说明默认值
SREC_LANG语言选择 (zhen)自动检测
RUST_SREC_DIR安装目录./rust-srec
VERSIONDocker 镜像标签 (latestdev)latest

手动安装

  1. 创建项目目录:

    bash
    mkdir rust-srec && cd rust-srec
  2. 下载示例配置文件:

  3. 重命名文件:

    bash
    # Linux/macOS
    mv docker-compose.example.yml docker-compose.yml
    mv .env.example .env
    
    # Windows
    rename docker-compose.example.yml docker-compose.yml
    rename .env.example .env
  4. 编辑 .env:确保设置了安全的 JWT_SECRETSESSION_SECRET(至少 32 个字符)。

安全提示

你可以使用以下命令生成一个安全的随机字符串:

  • Linux/macOS: openssl rand -hex 32
  • Windows (PowerShell): $bytes = New-Object Byte[] 32; [Security.Cryptography.RandomNumberGenerator]::Create().GetBytes($bytes); -join ($bytes | ForEach-Object { "{0:x2}" -f $_ })
  1. 启动应用:
    bash
    docker-compose up -d

磁盘空间

请确保 DATA_DIROUTPUT_DIR 挂载在有足够剩余空间的驱动器上。直播录制会非常迅速地消耗磁盘空间。

配置说明

.env 文件包含了所有必要的环境变量。

变量说明
JWT_SECRETJWT 签名密钥 (必需)
SESSION_SECRET前端会话加密密钥 (必需)

完整参考

有关所有可用环境变量及其说明的完整列表,请参阅 环境变量参考

docker-compose.yml

我们的标准示例 docker-compose.example.yml 包含了:

  • 自动重启unless-stopped
  • 健康检查:确保前端在后端就绪后才启动
  • 资源限制:可配置的 CPU 和内存限制
  • 日志轮转:防止日志撑爆磁盘

代理配置

如果您处于需要代理的环境中,可以为应用程序和下载引擎配置代理。

1. 配置环境变量

.env 文件中添加 HTTP_PROXYHTTPS_PROXY

bash
# .env
HTTP_PROXY=http://your-proxy-host:port
HTTPS_PROXY=http://your-proxy-host:port
NO_PROXY=localhost,127.0.0.1,rust-srec

2. 更新 docker-compose.yml

确保这些变量传递给 rust-srec 服务:

yaml
services:
  rust-srec:
    # ...
    environment:
      - HTTP_PROXY=${HTTP_PROXY:-}
      - HTTPS_PROXY=${HTTPS_PROXY:-}
      - NO_PROXY=${NO_PROXY:-}
    # ...

3. 在应用设置中启用

启动应用程序后,前往 全局设置 > 下载器 > 代理

  1. 启用 代理 (Proxy)
  2. 勾选 使用系统代理 (Use System Proxy)
  3. 保存设置。

这将指示应用程序及其引擎(FFmpeg、Streamlink、Mesio)遵循您配置的环境变量。

访问应用

更新版本

更新到最新版本:

bash
docker-compose pull
docker-compose up -d