文章目录
前言
amazoncorretto:17镜像中安装ffmpeg
一、ffmpeg是什么?
FFmpeg是一款强大的跨平台音视频处理开源软件,支持多种格式和编解码器,广泛应用于视频网站等领域。
官网:https://www.johnvansickle.com/ffmpeg/
代码下载:
shell
wget https://johnvansickle.com/ffmpeg/builds/ffmpeg-git-amd64-static.tar.xz
二、构建镜像
1.dockerfile文件
yaml
# Dockerfile
FROM amazoncorretto:17
# 安装依赖工具(wget, tar, gzip)
RUN yum update -y && \
yum install -y wget tar gzip xz && \
yum clean all
# 从本地复制(构建上下文)
COPY ffmpeg-git-amd64-static.tar.xz /tmp/
RUN mkdir -p /tmp/ffmpeg
RUN tar -xf /tmp/ffmpeg-git-amd64-static.tar.xz -C /tmp/ffmpeg --strip-components=1 && \
cp /tmp/ffmpeg/ffmpeg /tmp/ffmpeg/ffprobe /usr/local/bin/ && \
rm -rf /tmp/ffmpeg*
# 验证安装
RUN ffmpeg -version && \
ffprobe -version
2.开始构建
shell
docker build -t myapp-with-ffmpeg .
3.验证结果
shell
docker run --rm myapp-with-ffmpeg ffmpeg -version
输出
shell
ffmpeg version N-71064-gd5e603ddc0-static https://johnvansickle.com/ffmpeg/ Copyright (c) 2000-2024 the FFmpeg developers
built with gcc 8 (Debian 8.3.0-6)
configuration: --enable-gpl --enable-version3 --enable-static --disable-debug --disable-ffplay --disable-indev=sndio --disable-outdev=sndio --cc=gcc --enable-fontconfig --enable-frei0r --enable-gnutls --enable-gmp --enable-libgme --enable-gray --enable-libaom --enable-libfribidi --enable-libass --enable-libvmaf --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-librubberband --enable-libsoxr --enable-libspeex --enable-libsrt --enable-libvorbis --enable-libopus --enable-libtheora --enable-libvidstab --enable-libvo-amrwbenc --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libdav1d --enable-libxvid --enable-libzvbi --enable-libzimg
libavutil 59. 27.100 / 59. 27.100
libavcodec 61. 9.100 / 61. 9.100
libavformat 61. 4.100 / 61. 4.100
libavdevice 61. 2.100 / 61. 2.100
libavfilter 10. 2.102 / 10. 2.102
libswscale 8. 2.100 / 8. 2.100
libswresample 5. 2.100 / 5. 2.100
libpostproc 58. 2.100 / 58. 2.100