跳到主要内容

配置参考

所有配置均通过环境变量设置。

控制平面(muvee-server

变量默认值说明
DATABASE_URLpostgres://muvee:muvee@localhost:5432/muvee?sslmode=disablePostgreSQL 连接字符串
MIGRATIONS_DIR./db/migrationsSQL 迁移文件路径
PORT8080HTTP 监听端口
BASE_DOMAINlocalhost根域名;项目以 {prefix}.BASE_DOMAIN 的形式对外提供服务。同时通过 /api/agent/config 下发给 Agent。
GOOGLE_CLIENT_IDGoogle OAuth2 客户端 ID。设置后启用 Google 登录。详见 Google OAuth2
GOOGLE_CLIENT_SECRETGoogle OAuth2 客户端密钥
GOOGLE_REDIRECT_URLhttp://localhost:8080/auth/google/callbackGoogle OAuth2 回调地址
FEISHU_APP_ID飞书 / Lark App ID。设置后启用飞书登录。详见 飞书 / Lark
FEISHU_APP_SECRET飞书 / Lark App Secret
FEISHU_REDIRECT_URLhttp://localhost:8080/auth/feishu/callback飞书 OAuth2 回调地址
FEISHU_BASE_URLhttps://open.feishu.cn飞书 API 基础地址。国际版 Lark 设置为 https://open.larksuite.com
WECOM_CORP_ID企业微信 CorpId(企业ID)。设置后启用企业微信登录。详见 企业微信
WECOM_CORP_SECRET企业微信自建应用的 App Secret
WECOM_AGENT_ID企业微信自建应用的 AgentId
WECOM_REDIRECT_URLhttp://localhost:8080/auth/wecom/callback企业微信 OAuth2 回调地址
DINGTALK_CLIENT_ID钉钉 AppKey。设置后启用钉钉登录。详见 钉钉
DINGTALK_CLIENT_SECRET钉钉 AppSecret
DINGTALK_REDIRECT_URLhttp://localhost:8080/auth/dingtalk/callback钉钉 OAuth2 回调地址
ALLOWED_DOMAINS(允许所有)允许登录的邮箱域名,逗号分隔(如 company.com)。仅对 Google 生效;飞书/企微/钉钉在无法获取真实邮箱时会生成合成地址(*.local),这类地址会自动跳过域名校验。
ADMIN_EMAILS逗号分隔的邮箱地址列表,登录时自动提升为 admin 角色,可访问 traefik.BASE_DOMAIN
JWT_SECRETchange-me-in-production用于签发 JWT 会话令牌的密钥
AGENT_SECRETAgent ↔ 服务器认证的共享密钥(所有 Agent 上设置相同的值)。未设置时,Agent 端点无需认证(仅用于开发环境)。
AUTH_SERVICE_URLhttp://muvee-authservice:4181muvee-authservice 的内部 URL;在为 Traefik 生成项目级 ForwardAuth 配置时使用
REGISTRY_ADDRlocalhost:5000Docker 镜像仓库地址。通过 /api/agent/config 下发给 Agent——Agent 无需在本地设置此项。
REGISTRY_USER镜像仓库基础认证用户名。下发给 Agent——Agent 启动时自动执行 docker login
REGISTRY_PASSWORD镜像仓库基础认证密码。下发给 Agent。
SECRET_ENCRYPTION_KEY64 字符十六进制字符串(32 字节),用于以 AES-256-GCM 加密静态密钥。启用 Secrets 功能时必填。使用 openssl rand -hex 32 生成。
VOLUME_NFS_BASE_PATH控制平面主机上用于项目工作区卷的 NFS 基础目录(如 /mnt/nfs/volumes)。每个项目的子目录会在该路径下自动创建。同时通过 /api/agent/config 下发给部署 Agent,Agent 使用该路径将卷 bind mount 到容器中。未设置时工作区功能不可用。
DATASET_NFS_BASE_PATH数据集 NFS 基础目录(如 /mnt/nfs/datasets)。Dataset 的 nfs_path 会被视为该目录下的相对子路径(例如 warehouse/mnt/nfs/datasets/warehouse)。server monitor 与 deploy agent 都会直接访问该路径;相关机器需使用相同绝对路径挂载。

ForwardAuth 服务(muvee-authservice

变量默认值说明
PORT4181HTTP 监听端口
GOOGLE_CLIENT_ID与控制平面相同
GOOGLE_CLIENT_SECRET与控制平面相同
FORWARD_AUTH_REDIRECT_URLhttp://localhost:4181/_oauthForwardAuth 的 OAuth2 回调 URL。生产环境设置为 https://BASE_DOMAIN/_oauth,并在 Google Cloud Console 中与 GOOGLE_REDIRECT_URL 一起注册。
BASE_DOMAIN根域名。必填,用于将 session cookie 共享给所有 *.BASE_DOMAIN 子域名(如 traefik.BASE_DOMAIN、各 project 子域名)。
JWT_SECRET必须与控制平面的值一致
ADMIN_EMAILS必须与控制平面的值一致;用于控制 /verify-admin(Traefik 控制台)访问权限

Agent(muvee-agent

变量默认值说明
NODE_ROLE(必填)builderdeploy
CONTROL_PLANE_URLhttp://localhost:8080控制平面的内网地址(如 http://10.0.0.1:8080)。不要使用公开域名——详见 Agent 节点
AGENT_SECRET必须与控制平面上设置的值一致
DATA_DIR/muvee/data本地数据集缓存根目录(部署节点使用)
HOST_IP(自动检测)Traefik 用来访问此节点上容器的 IP 地址。自动从到达 CONTROL_PLANE_URL 所使用的网络接口检测。若自动检测结果有误(如多网卡主机),可手动覆盖。
镜像仓库凭据和 BASE_DOMAIN 自动下发

Agent 在启动时通过 GET /api/agent/config 从控制平面获取 REGISTRY_ADDRREGISTRY_USERREGISTRY_PASSWORDBASE_DOMAIN。这些配置只需在控制平面上设置一次——无需在各个 Agent 节点上单独配置。