1. Docker环境适配: - Dockerfile基础镜像从JDK11升级为eclipse-temurin:21 - pom.xml编译版本从Java21降为Java17 - docker-compose开放Redis(6379)、MySQL(3306)、ZLM(6080)端口映射 - application.yml激活profile改为dev - application-dev.yml适配Docker服务连接参数(Redis/MySQL/ZLM) 2. 修复拉流代理播放失败: - Nginx添加流媒体后缀代理规则(.flv/.m3u8/.ts等),支持自定义app名的流路径 - Nginx添加WebRTC API代理规则 - Nginx添加sub_filter规则,将API返回的流地址端口从80(ZLM容器内部端口)重写为8080(Nginx对外端口) - docker-compose向Nginx容器传递WebHttp环境变量 3. ZLMediaKit配置补充onvif和rtc相关配置段 Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
85 lines
2.7 KiB
Docker
85 lines
2.7 KiB
Docker
FROM eclipse-temurin:21-jdk AS builder
|
||
|
||
EXPOSE 18978/tcp
|
||
EXPOSE 8116/tcp
|
||
EXPOSE 8116/udp
|
||
EXPOSE 8080/tcp
|
||
|
||
#RUN apt-get update && \
|
||
#DEBIAN_FRONTEND="noninteractive" \
|
||
#apt-get install -y --no-install-recommends \
|
||
#wget \
|
||
#cmake \
|
||
#maven \
|
||
#git \
|
||
#ca-certificates \
|
||
#tzdata \
|
||
#curl \
|
||
#libpcre3 \
|
||
#libpcre3-dev \
|
||
#zlib1g-dev \
|
||
#openssl \
|
||
#libssl-dev \
|
||
#gdb && \
|
||
#apt-get autoremove -y && \
|
||
#apt-get clean -y && \
|
||
#rm -rf /var/lib/apt/lists/*
|
||
|
||
## install jdk1.8
|
||
#RUN mkdir -p /opt/download
|
||
#WORKDIR /opt/download
|
||
#RUN if [ "$Platfrom" = "arm64" ]; \
|
||
#then \
|
||
#wget https://polaris-tian-generic.pkg.coding.net/qt/autopliot/jdk-8u411-linux-aarch64.tar.gz?version=latest --no-check-certificate -O jdk-8.tar.gz && \
|
||
#tar -zxvf /opt/download/jdk-8.tar.gz -C /usr/local/ --transform 's/jdk1.8.0_411/java/' && \
|
||
#rm /opt/download/jdk-8.tar.gz; \
|
||
#else \
|
||
#wget https://polaris-tian-generic.pkg.coding.net/qt/autopliot/jdk-8u202-linux-x64.tar.gz?version=latest --no-check-certificate -O jdk-8.tar.gz && \
|
||
#tar -zxvf /opt/download/jdk-8.tar.gz -C /usr/local/ --transform 's/jdk1.8.0_202/java/' && \
|
||
#rm /opt/download/jdk-8.tar.gz; \
|
||
#fi
|
||
|
||
#ENV JAVA_HOME /usr/local/java/
|
||
#ENV JRE_HOME ${JAVA_HOME}/jre
|
||
#ENV CLASSPATH .:${JAVA_HOME}/lib:${JRE_HOME}/lib
|
||
#ENV PATH ${JAVA_HOME}/bin:$PATH
|
||
|
||
RUN java -version && javac -version
|
||
|
||
#RUN sed -i 's/deb.debian.org/mirrors.aliyun.com/g' /etc/apt/sources.list.d/debian.sources && \
|
||
RUN apt-get update && \
|
||
apt-get install -y maven && \
|
||
rm -rf /var/lib/apt/lists/*
|
||
|
||
|
||
COPY . /build
|
||
WORKDIR /build
|
||
RUN ls && mvn clean package -Dmaven.test.skip=true
|
||
WORKDIR /build/target
|
||
#ȷ<><C8B7><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD>һ<EFBFBD><D2BB>
|
||
RUN mv wvp-pro-*.jar wvp.jar
|
||
|
||
|
||
FROM eclipse-temurin:21-jre
|
||
RUN mkdir -p /opt/wvp
|
||
WORKDIR /opt/wvp
|
||
COPY --from=builder /build/target /opt/wvp
|
||
COPY ./docker/wvp/wvp /opt/wvp
|
||
ENTRYPOINT ["java", "-Xms512m", "-Xmx1024m", "-XX:+HeapDumpOnOutOfMemoryError", "-XX:HeapDumpPath=/opt/ylcx/", "-jar", "wvp.jar", "--spring.config.location=/opt/ylcx/wvp/application.yml"]
|
||
|
||
|
||
|
||
#RUN mkdir -p /opt/wvp
|
||
#WORKDIR /opt/wvp
|
||
#COPY ./wvp /opt/wvp
|
||
#
|
||
#WORKDIR /home
|
||
#RUN cd /home && \
|
||
#git clone https://gitee.com/pan648540858/wvp-GB28181-pro.git
|
||
#
|
||
#RUN cd /home/wvp-GB28181-pro && \
|
||
#mvn clean package -Dmaven.test.skip=true && \
|
||
#cp /home/wvp-GB28181-pro/target/*.jar /opt/wvp/wvp.jar
|
||
#
|
||
#WORKDIR /opt/wvp
|
||
#ENTRYPOINT ["java", "-Xms512m", "-Xmx1024m", "-XX:+HeapDumpOnOutOfMemoryError", "-XX:HeapDumpPath=/opt/ylcx/", "-jar", "wvp.jar", "--spring.config.location=/opt/ylcx/wvp/application.yml"] |