使用 Motrix Server 为家庭 NAS 部署下载服务。服务数据存放在 SSD 上,下载文件保存到 NAS 的下载目录,便于分别管理。

创建配置文件

在同一目录下创建 compose.yaml 和 .env,分别保存服务配置与挂载路径。

Compose 配置

创建 compose.yaml:

services:
  server:
    image: docker.io/motrixapp/motrix-server:2.0.0-beta.46
    container_name: motrix-server

    init: true
    restart: unless-stopped
    stop_grace_period: 2m

    # 使用 UID 1000、GID 2000,以非 root 身份运行
    user: "1000:2000"

    # 只读根文件系统
    read_only: true

    security_opt:
      - no-new-privileges:true

    tmpfs:
      - /tmp:rw,noexec,nosuid,size=64m,mode=1777

    ports:
      - "8080:8080"
      - "16801:16801"

    environment:
      - TZ=Asia/Shanghai

      - MOTRIX_DATA_DIR=/data
      - MOTRIX_TEMP_DIR=/data/tmp
      - MOTRIX_PLUGIN_DIR=/data/plugins

      - MOTRIX_DEFAULT_SAVE_DIR=/downloads
      - MOTRIX_ALLOWED_SAVE_DIRS=/downloads

      - MOTRIX_MDXP_HOST=0.0.0.0
      - MOTRIX_MDXP_PORT=16801

      - MOTRIX_ARIA2_RPC_LISTEN_ALL=true
      - MOTRIX_REMOTE_EXTENSION_ENABLED=false
      - MOTRIX_ALLOW_INSECURE_OPERATOR_HTTP=false

    volumes:
      - ${DATA_DIR}:/data
      - ${STORAGE_DIR}:/downloads

环境变量

创建 .env,按实际磁盘挂载位置调整路径:

DATA_DIR=/mnt/ssd/docker/data/motrix
STORAGE_DIR=/mnt/hdd/nas/downloads

查看访问令牌

服务启动后,执行下面的命令,查看 operator-token 文件中的访问令牌:

docker exec motrix-server cat /data/operator-token