以换源举例:
export CDN=http://mirrors.ustc.edu.cn
echo -e "\
deb $CDN/debian/ buster main contrib non-free\n\
deb $CDN/debian/ buster-updates main contrib non-free\n\
deb $CDN/debian/ buster-backports main contrib non-free\n\
deb $CDN/debian-security/ buster/updates main contrib non-free\
"> /etc/apt/sources.list
在 Dockerfile 中如果加 -e
选项会将其当作字符串拼接在前面。
FROM openjdk:8
ENV TZ=PRC\
CDN=http://mirrors.ustc.edu.cn
WORKDIR /root
RUN ln -snf "/usr/share/zoneinfo/$TZ" /etc/localtime && echo "$TZ" > /etc/timezone &&\
echo "\
deb $CDN/debian/ buster main contrib non-free\n\
deb $CDN/debian/ buster-updates main contrib non-free\n\
deb $CDN/debian/ buster-backports main contrib non-free\n\
deb $CDN/debian-security/ buster/updates main contrib non-free\
"> /etc/apt/sources.list &&\
apt update && apt upgrade -y