Как установить часовой пояс и локаль на изображении Wildfly Docker? - PullRequest
0 голосов
/ 26 марта 2019

Официальное изображение Wildfly , доступное в Docker Hub, имеет часовой пояс, установленный как UTC, и не имеет конфигурации локали.

Изображение имеет следующее дерево зависимостей:

jboss/wildfly
└── jboss/base-jdk:11
    └── jboss/base
        └── centos:7

Исходя из этого, я проверил конфигурацию часового пояса / локали, используя следующие команды:

docker exec -t <id> locale
docker exec -t <id> cat /ety/localtime

Как я могу установить соответствующую информацию о часовом поясе и локали в Dockerfile?

1 Ответ

0 голосов
/ 26 марта 2019

Это решение, которое я придумал после проверки документов Dockerfiles и CentOS для базовых образов:

В следующем примере Dockerfile в качестве локали указывается часовой пояс Сан-Паулу, Бразилия и португальский (Бразилия). Можно изменить часовой пояс / локаль в соответствии со своими потребностями:

FROM jboss/wildfly:10.1.0.Final

USER root

RUN localedef -i pt_BR -f UTF-8 pt_BR.UTF-8
RUN echo "LANG=\"pt_BR.UTF-8\"" > /etc/locale.conf
RUN ln -s -f /usr/share/zoneinfo/America/Sao_Paulo /etc/localtime

USER jboss

ENV LANG pt_BR.UTF-8
ENV LANGUAGE pt_BR.UTF-8
ENV LC_ALL pt_BR.UTF-8
...
...