在构建 Docker 镜像时,如果使用 Multi Stage,最终会将命令和库 COPY 到 Alpine 中执行。好处包括:
下面说一下我在使用 Alpine 时遇到的问题及解决方法。
解决方法:
xxxxxxxxxx# 设置时区ENV TZ Asia/Shanghai# 安装时区数据RUN apk -U upgrade && apk add tzdata && cp /usr/share/zoneinfo/${TZ} /etc/localtime && echo ${TZ} > /etc/timezone解决方法:
x# 需要先获取 PingFang 字体,macOS 上在 /System/Library/Fonts/PingFang.ttcCOPY PingFang.ttc /usr/share/fonts/PingFang.ttc
# 删除安装缓存包;刷新字体;验证RUN apk add --update fontconfig && rm -rf /var/cache/apk/* && mkfontscale && mkfontdir && fc-cache && fc-list解决方法:
# 切换国内镜像源RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /etc/apk/repositories