Docker: How to add backports to sources.list via Dockerfile?

Tested on Ubuntu 20.04, >> is required when appending to sources.list.

RUN echo 'deb http://deb.debian.org jessie-backports main' >> /etc/apt/sources.list

Other answers create a new flie in /etc/apt/sources.list.d which is OK, but the original question refers to appending to sources.list. Use >> to append to a file.


You can do it by adding below

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

Looking for the same issue I have seen that Debian provides Docker images for backport versions. So you do not need to do that yourself. For instance you can have a jessie backports Dockerfile using FROM debian:jessie-backports command.

By looking at what one of the Debian official backport files do to have the backport version it boils down to something similar to what Tarun's asnwer, using the base distribution then appending the backports to a specific backports.list, i.e.:

FROM debian:jessie
RUN echo 'deb http://deb.debian.org/debian jessie-backports main' > /etc/apt/sources.list.d/backports.list