%% IT 智能服务台 — 架构组件图(卷挂载重构前后对比) %% 文件: class-diagram.mermaid classDiagram class HostServer { +String path: /opt/wecom-it-desk/ +String ip: 10.90.5.110 +String domain: itsupport.servyou.com.cn } class AppDirectory { +String path: /opt/wecom-it-desk/app/ +String role: 唯一代码源 +List~File~ pythonFiles +Boolean hasAuthPy } class BackendDirectory { +String path: /opt/wecom-it-desk/backend/ +File dockerfile +File requirementsTxt +String note: 不再包含 app/ 子目录 } class DockerImage { +String name: wecom-it-desk-backend:latest +String base: python:3.12-slim +String pythonVersion: 3.12 +Boolean containsCode: false +Boolean containsDeps: true +String envPythondontWriteBytecode: "1" } class DockerContainer { +String name: wecom_it_backend +String workdir: /app +String command: uvicorn app.main:app +Integer port: 8000 +Boolean healthy } class VolumeMount { +String hostPath: /opt/wecom-it-desk/app/ +String containerPath: /app/app/ +String type: bind +String mode: rw } class UploadVolume { +String name: backend-uploads +String containerPath: /app/uploads/ +String type: named_volume } class LogMount { +String hostPath: /var/log/wecom-it-desk/ +String containerPath: /app/logs/ +String type: bind } class DockerCompose { +String file: docker-compose.yml +String buildContext: ./backend +List~Service~ services } class HealthCheck { +String endpoint: /health +Integer interval: 30 +Integer timeout: 10 +Integer retries: 3 +Integer startPeriod: 40 } HostServer --> AppDirectory : contains HostServer --> BackendDirectory : contains HostServer --> DockerCompose : contains DockerCompose --> DockerImage : builds DockerCompose --> DockerContainer : runs DockerCompose --> VolumeMount : configures DockerCompose --> UploadVolume : configures DockerCompose --> LogMount : configures DockerImage --> DockerContainer : basis for VolumeMount --> DockerContainer : mounts code to /app/app/ UploadVolume --> DockerContainer : mounts uploads to /app/uploads/ LogMount --> DockerContainer : mounts logs to /app/logs/ AppDirectory --> VolumeMount : source of DockerContainer --> HealthCheck : monitored by BackendDirectory --> DockerImage : provides Dockerfile + requirements.txt