如何在Docker Alpine中设置区域设置?

时间:2018-03-01 03:35:56

标签: docker centos locale alpine

我可以使用带有

的CentOS图像设置区域设置
FROM centos

ENV LANG en_US.UTF-8

ENV LC_ALL en_US.UTF-8

但似乎无法使用Alpine图像。如何使用Alpine图像设置区域设置?

2 个答案:

答案 0 :(得分:1)

它对我有用,Dockerfile:

FROM openjdk:8-jdk-alpine

RUN apk update
RUN apk add tzdata
RUN cp /usr/share/zoneinfo/America/Sao_Paulo /etc/localtime
RUN rm -r /usr/share/zoneinfo/Africa && \
    rm -r /usr/share/zoneinfo/Antarctica && \
    rm -r /usr/share/zoneinfo/Arctic && \
    rm -r /usr/share/zoneinfo/Asia && \
    rm -r /usr/share/zoneinfo/Atlantic && \
    rm -r /usr/share/zoneinfo/Australia && \
    rm -r /usr/share/zoneinfo/Europe  && \
    rm -r /usr/share/zoneinfo/Indian && \
    rm -r /usr/share/zoneinfo/Mexico && \
    rm -r /usr/share/zoneinfo/Pacific && \
    rm -r /usr/share/zoneinfo/Chile && \
    rm -r /usr/share/zoneinfo/Canada
RUN echo "America/Sao_Paulo" >  /etc/timezone

ENV TZ America/Sao_Paulo
ENV LANG pt_BR.UTF-8
ENV LANGUAGE pt_BR.UTF-8
ENV LC_ALL pt_BR.UTF-8

ARG JAR_FILE
ADD ${JAR_FILE} /app/
RUN mv /app/${JAR_FILE} /app/app.jar
ENTRYPOINT java $JAVA_OPTS -jar /app/app.jar

答案 1 :(得分:1)

有一种使用apk del tzdata的更简洁的方法,如下所述:

Setting the timezone - Alpine Linux