mirror of
https://gitcode.com/ageerle/ruoyi-ai.git
synced 2026-09-13 16:34:57 +00:00
- 新增音频/视频/图片生成服务与 Atlas、OpenAI 实现 - 新增短剧脚本生成、分镜与 ffmpeg 合成模块 - 新增 Coze/Dify 聊天 provider 及 Agent 配置 - 脱敏 SQL 脚本:移除真实 DeepSeek API Key,掩码 COS 桶名 - 清理过期的 SQL update 脚本与 chat 文档 Co-Authored-By: Claude <noreply@anthropic.com>
60 lines
2.1 KiB
Docker
60 lines
2.1 KiB
Docker
# FFmpeg-enabled variant of ruoyi-admin/Dockerfile.
|
|
FROM bellsoft/liberica-openjdk-rocky:17.0.16-cds
|
|
|
|
LABEL maintainer="Lion Li"
|
|
|
|
# Rocky base repositories do not provide the full codec build. RPM Fusion Free
|
|
# supplies ffmpeg with libx264, while the checks below prevent a reduced build
|
|
# from reaching production unnoticed.
|
|
RUN set -eux; \
|
|
dnf -y install dnf-plugins-core epel-release; \
|
|
. /etc/os-release; \
|
|
rocky_major="${VERSION_ID%%.*}"; \
|
|
if [ "${rocky_major}" -ge 9 ]; then \
|
|
dnf config-manager --set-enabled crb; \
|
|
else \
|
|
dnf config-manager --set-enabled powertools; \
|
|
fi; \
|
|
dnf -y install "https://mirrors.rpmfusion.org/free/el/rpmfusion-free-release-${rocky_major}.noarch.rpm"; \
|
|
dnf -y install ffmpeg; \
|
|
for filter in scale pad fps setsar format tpad trim settb setpts xfade \
|
|
aresample aformat apad atrim asetpts anullsrc concat acrossfade; do \
|
|
ffmpeg -hide_banner -filters 2>/dev/null | grep -Eq "[[:space:]]${filter}[[:space:]]"; \
|
|
done; \
|
|
ffmpeg -hide_banner -h filter=xfade 2>&1 | grep -q dissolve; \
|
|
ffmpeg -hide_banner -h filter=xfade 2>&1 | grep -q fadeblack; \
|
|
ffmpeg -hide_banner -h filter=xfade 2>&1 | grep -q slideleft; \
|
|
ffmpeg -hide_banner -encoders 2>/dev/null | grep -Eq '[[:space:]]libx264[[:space:]]'; \
|
|
ffmpeg -hide_banner -encoders 2>/dev/null | grep -Eq '[[:space:]]aac[[:space:]]'; \
|
|
ffprobe -hide_banner -version >/dev/null; \
|
|
dnf clean all; \
|
|
rm -rf /var/cache/dnf
|
|
|
|
RUN mkdir -p /ruoyi/server/logs \
|
|
/ruoyi/server/temp \
|
|
/ruoyi/skywalking/agent
|
|
|
|
WORKDIR /ruoyi/server
|
|
|
|
ENV SERVER_PORT=8080 \
|
|
SNAIL_PORT=28080 \
|
|
LANG=C.UTF-8 \
|
|
LC_ALL=C.UTF-8 \
|
|
JAVA_OPTS="" \
|
|
FFMPEG_PATH=/usr/bin/ffmpeg \
|
|
FFPROBE_PATH=/usr/bin/ffprobe
|
|
|
|
EXPOSE ${SERVER_PORT}
|
|
EXPOSE ${SNAIL_PORT}
|
|
|
|
ADD ./target/ruoyi-admin.jar ./app.jar
|
|
|
|
SHELL ["/bin/bash", "-c"]
|
|
|
|
ENTRYPOINT java -Djava.security.egd=file:/dev/./urandom \
|
|
-Djava.io.tmpdir=/ruoyi/server/temp \
|
|
-Dserver.port=${SERVER_PORT} \
|
|
-Dsnail-job.port=${SNAIL_PORT} \
|
|
-XX:+HeapDumpOnOutOfMemoryError -XX:+UseZGC ${JAVA_OPTS} \
|
|
-jar app.jar
|