docker-compose.yml 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. version: '3.8'
  2. services:
  3. jtjai_media:
  4. build:
  5. context: .
  6. dockerfile: Dockerfile
  7. # 支持多平台构建参数
  8. args:
  9. - BUILDPLATFORM=${BUILDPLATFORM:-linux/amd64}
  10. - TARGETPLATFORM=${TARGETPLATFORM:-linux/amd64}
  11. - TARGETARCH=${TARGETARCH:-amd64}
  12. # 默认平台配置,可通过环境变量DOCKER_DEFAULT_PLATFORM覆盖
  13. platform: ${DOCKER_DEFAULT_PLATFORM:-linux/amd64}
  14. image: k8s.device.wenhq.top:8583/docker_r/jtjai_media:latest
  15. container_name: jtjai_media
  16. # 使用host网络模式以解决RTSP连接问题
  17. network_mode: host
  18. volumes:
  19. # 挂载配置文件(可选,如果需要修改配置)
  20. - ./config.json:/app/config.json:ro
  21. # 挂载输出目录到宿主机,持久化视频文件
  22. - ./output:/app/output
  23. restart: unless-stopped
  24. environment:
  25. - TZ=Asia/Shanghai
  26. # 添加网络调试环境变量
  27. - RTSP_DEBUG=1
  28. - USE_IP_DIRECT=1
  29. # 添加额外的网络配置
  30. extra_hosts:
  31. - "host.docker.internal:host-gateway"
  32. # 资源限制(可选)
  33. deploy:
  34. resources:
  35. limits:
  36. cpus: '2.0'
  37. memory: 2G
  38. reservations:
  39. cpus: '1.0'
  40. memory: 512M
  41. # 健康检查
  42. healthcheck:
  43. test: ["CMD", "curl", "-f", "http://localhost:8080/"]
  44. interval: 30s
  45. timeout: 10s
  46. retries: 3
  47. start_period: 40s