| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788 | 
							- # 多阶段构建Dockerfile for AMD64平台
 
- # RTSP视频流并发拉取系统
 
- # 构建参数定义平台架构,默认为linux/amd64
 
- ARG BUILDPLATFORM=linux/amd64
 
- ARG TARGETPLATFORM=linux/amd64
 
- # ============================================
 
- # 阶段1: 构建环境
 
- # ============================================
 
- FROM --platform=$BUILDPLATFORM ubuntu:22.04 AS builder
 
- # 设置环境变量避免交互式提示
 
- ENV DEBIAN_FRONTEND=noninteractive
 
- ENV TZ=Asia/Shanghai
 
- # 安装构建依赖
 
- RUN apt-get update && apt-get install -y \
 
-     build-essential \
 
-     cmake \
 
-     git \
 
-     wget \
 
-     pkg-config \
 
-     libavcodec-dev \
 
-     libavformat-dev \
 
-     libavutil-dev \
 
-     libswscale-dev \
 
-     libboost-all-dev \
 
-     libfmt-dev \
 
-     && apt-get clean \
 
-     && rm -rf /var/lib/apt/lists/*
 
- # 创建工作目录
 
- WORKDIR /app
 
- # 复制项目文件
 
- COPY CMakeLists.txt ./
 
- COPY include/ ./include/
 
- COPY src/ ./src/
 
- COPY main.cpp ./
 
- COPY config.json ./
 
- COPY video_manager.html ./
 
- # 创建构建目录并编译
 
- RUN mkdir -p build && \
 
-     cd build && \
 
-     cmake .. && \
 
-     make -j$(nproc)
 
- # ============================================
 
- # 阶段2: 运行环境
 
- # ============================================
 
- FROM ubuntu:22.04
 
- # 设置环境变量
 
- ENV DEBIAN_FRONTEND=noninteractive
 
- ENV TZ=Asia/Shanghai
 
- # 安装运行时依赖
 
- RUN apt-get update && apt-get install -y \
 
-     libavcodec-dev \
 
-     libavformat-dev \
 
-     libavutil-dev \
 
-     libswscale-dev \
 
-     libboost-all-dev \
 
-     libfmt-dev \
 
-     curl \
 
-     && apt-get clean \
 
-     && rm -rf /var/lib/apt/lists/*
 
- # 创建应用目录
 
- WORKDIR /app
 
- # 从构建阶段复制编译好的可执行文件
 
- COPY --from=builder /app/build/jtjai_media /app/jtjai_media
 
- # 复制配置文件和Web资源
 
- COPY --from=builder /app/config.json /app/config.json
 
- COPY --from=builder /app/video_manager.html /app/video_manager.html
 
- # 创建输出目录
 
- RUN mkdir -p /app/output
 
- # 暴露HTTP服务端口
 
- EXPOSE 8080
 
- # 设置启动命令
 
- CMD ["/app/jtjai_media", "/app/config.json"]
 
 
  |