Update docker debian version to use ffmpeg 6.1

This commit is contained in:
Zoe Roux 2024-02-23 17:58:45 +01:00
parent b042b4cf60
commit 71fe10efaf
2 changed files with 51 additions and 5 deletions

View File

@ -1,4 +1,23 @@
FROM golang:1.21 as build
# FROM golang:1.21 as build
FROM debian:trixie-slim as build
# those were copied from https://github.com/docker-library/golang/blob/master/Dockerfile-linux.template
ENV GOTOOLCHAIN=local
ENV GOPATH /go
ENV PATH $GOPATH/bin:/usr/local/go/bin:$PATH
RUN set -eux; \
apt-get update; \
apt-get install -y --no-install-recommends \
ca-certificates openssl \
golang\
g++ \
gcc \
libc6-dev \
make \
pkg-config
# https://github.com/golang/go/issues/54400
ENV SSL_CERT_DIR=/etc/ssl/certs
RUN update-ca-certificates
RUN apt-get update \
&& apt-get install --no-install-recommends --no-install-suggests -y \
ffmpeg libavformat-dev libavutil-dev libswscale-dev libmediainfo-dev \
@ -11,10 +30,14 @@ COPY . .
RUN go build -o ./transcoder
# debian is required for nvidia hardware acceleration
FROM debian:12-slim
# we use trixie (debian's testing because ffmpeg on latest is v5 and we need v6)
# https://packages.debian.org/bookworm/ffmpeg for version tracking
FROM debian:trixie-slim
RUN apt-get update \
&& apt-get install --no-install-recommends --no-install-suggests -y ffmpeg libmediainfo-dev \
&& apt-get autoremove -y
&& apt-get clean autoclean -y \
&& apt-get autoremove -y \
&& rm -rf /var/lib/apt/lists/*
WORKDIR /app
COPY --from=build /app/transcoder /app/transcoder

View File

@ -1,10 +1,33 @@
FROM golang:1.21
# we use trixie (debian's testing because ffmpeg on latest is v5 and we need v6)
# https://packages.debian.org/bookworm/ffmpeg for version tracking
# FROM golang:1.21
# trixie's golang is also 1.21
FROM debian:trixie-slim
# those were copied from https://github.com/docker-library/golang/blob/master/Dockerfile-linux.template
ENV GOTOOLCHAIN=local
ENV GOPATH /go
ENV PATH $GOPATH/bin:/usr/local/go/bin:$PATH
RUN set -eux; \
apt-get update; \
apt-get install -y --no-install-recommends \
ca-certificates openssl \
golang\
g++ \
gcc \
libc6-dev \
make \
pkg-config
# https://github.com/golang/go/issues/54400
ENV SSL_CERT_DIR=/etc/ssl/certs
RUN update-ca-certificates
RUN go install github.com/bokwoon95/wgo@latest
RUN apt-get update \
&& apt-get install --no-install-recommends --no-install-suggests -y \
ffmpeg libavformat-dev libavutil-dev libswscale-dev libmediainfo-dev \
&& apt-get clean autoclean -y \
&& apt-get autoremove -y
RUN go install github.com/bokwoon95/wgo@latest
WORKDIR /app
# flags for nvidia acceleration on docker < 25.0