J'ai besoin d'installer ffmeg
sur Debian Jessie via Dockerfile.
Debian recommande d'utiliser des rétroportages. Mais comment faire cela dans mon Dockerfile?
Ajouter
deb http://httpredir.debian.org/debian jessie-backports main non-free
deb-src http://httpredir.debian.org/debian jessie-backports main non-free
à
/etc/apt/sources.list
Voici à quoi ressemble mon Dockerfile:
FROM node:4.8-slim
COPY . /
## How to add backports to list ???
RUN apt-get update && apt-get install ffmpeg && ffmpeg -i
RUN (cd programs/server && npm install --silent)
CMD ["node", "main.js"]
Vous pouvez le faire en ajoutant ci-dessous
RUN printf "deb http://httpredir.debian.org/debian jessie-backports main non-free\ndeb-src http://httpredir.debian.org/debian jessie-backports main non-free" > /etc/apt/sources.list.d/backports.list
À la recherche du même problème, j'ai vu que Debian fournit des images Docker pour les versions backport
. Vous n'avez donc pas besoin de le faire vous-même. Par exemple, vous pouvez avoir un Dockerfile jessie backports
En utilisant la commande FROM debian:jessie-backports
.
En regardant ce que l'un des fichiers officiels de backport de Debian pour avoir la version de backport, cela se résume à quelque chose de similaire à la réponse de Tarun, en utilisant la distribution de base puis en ajoutant les backports à un backports.list
, c'est à dire:
FROM debian:jessie
RUN echo 'deb http://deb.debian.org/debian jessie-backports main' > /etc/apt/sources.list.d/backports.list