dockerfile自定义构建最新版ffmpeg
时间: 2023-10-02 15:04:13 浏览: 142
可以通过以下的 Dockerfile 来构建最新版的 ffmpeg:
```dockerfile
FROM alpine:latest
RUN apk add --no-cache build-base git nasm automake autoconf libtool pkgconfig \
zlib-dev openssl-dev curl-dev libressl-dev yasm-dev lame-dev x264-dev \
libvpx-dev libass-dev freetype-dev opus-dev libtheora-dev libvorbis-dev \
libwebp-dev rtmpdump-dev libxcb-dev libxcb-shm-dev libxcb-xfixes-dev
RUN git clone https://git.ffmpeg.org/ffmpeg.git /usr/local/src/ffmpeg \
&& cd /usr/local/src/ffmpeg \
&& ./configure --prefix=/usr/local --enable-shared --enable-static --enable-gpl --enable-nonfree --enable-libfdk-aac --enable-libmp3lame --enable-libopus --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libxcb --enable-libxcb-shm --enable-libxcb-xfixes --enable-libx265 --enable-libwebp --enable-libass \
&& make -j$(nproc) \
&& make install \
&& rm -rf /usr/local/src/ffmpeg
CMD ["ffmpeg", "-version"]
```
这个 Dockerfile 首先从 Alpine 官方仓库拉取最新的镜像。然后安装了一些编译 ffmpeg 所需的依赖,包括各种编解码器和库。接着从 ffmpeg 的官方仓库获取源码,并在容器内进行编译和安装。最后设置了容器的默认启动命令为 `ffmpeg -version`。
使用以下命令构建 Docker 镜像:
```bash
docker build -t ffmpeg:latest .
```
这个命令将会在当前目录下查找 Dockerfile 文件,并使用它构建一个名为 `ffmpeg:latest` 的 Docker 镜像。
阅读全文