--- title: 线上部署拓扑与更新流程 type: fact permalink: main/projects/d5a7f581-c442-4554-87b9-ee723b8b0258/线上部署拓扑与更新流程 stable_id: 4834e28b-9c36-419a-8ff8-f8c1963bfd39 scope: project project_id: d5a7f581-c442-4554-87b9-ee723b8b0258 memory_type: fact status: active revision: 1 restored_from_commit: 6a6a895eafcca6052e81a14fca103a42635dd1c2 created_at: '2026-09-23T15:10:32.428045+00:00' updated_at: '2026-09-23T15:10:32.428099+00:00' tags: - deployment - production - docker --- 生产服务器 188.5.127.115(SSH 端口 15122,凭证见密码库条目「Metrix 生产服务器 SSH」):Metrix 容器 metrix-app 在 /opt/metrix(compose),对外 http://188.5.127.115:18271(iKuai 端口映射 → 容器 8000),数据卷挂 /data(METRIX_RUNTIME_DIR),挂载宿主 docker.sock。更新流程:本地 `python scripts/build_docker.py`(产物 dist/docker/metrix-app-latest.tar,含前端构建)→ pscp 传 tar 到 /tmp/metrix-app-<短哈希>.tar → plink 远程:sha256 校验、`docker tag metrix-app:latest metrix-app:rollback-before-<短哈希>`、docker load、`docker compose -f /opt/metrix/docker-compose.yml up -d --no-deps --force-recreate metrix-app`、删 tar → 健康检查 GET /api/health。pscp/plink 需 -hostkey "SHA256:U+yfo+wkFXy1th9WULVDxb0VZzl025foSX/DczvNgQk"。回滚:用 rollback-before-* 标签重新 tag+up。同机还跑:metrix-pypiserver(18280)、capacityrepost-web 第二实例(19082,维护时不得动)、MySQL、sftpgo 等。脚本基础镜像离线包见 packaging/README.md。