Locale não aparecendo em 'locale -a' depois de adicioná-lo com 'locale-gen' e 'update-locale'

0

Atualmente, estou trabalhando em um projeto que usa a imagem do python:latest docker para executar testes, pois meu projeto requer o uso das localidades en_US.UTF-8 e nl_NL.UTF-8 que tive que adicioná-las no meu script de IC.

No entanto, sempre que tento adicioná-los, eles não aparecem na minha saída local (nem meu código é capaz de usá-los). Alguém sabe o que estou fazendo errado aqui?

root@90a95fe4f532:/# locale -a
C
C.UTF-8
POSIX
root@90a95fe4f532:/# locale-gen en_US.UTF-8
Generating locales (this might take a while)...
Generation complete.
root@90a95fe4f532:/# locale-gen nl_NL.UTF-8
Generating locales (this might take a while)...
Generation complete.
root@90a95fe4f532:/# update-locale
root@90a95fe4f532:/# locale -a
C
C.UTF-8
POSIX
root@90a95fe4f532:/# locale-gen nl_NL.UTF-8
Generating locales (this might take a while)...
Generation complete.
root@90a95fe4f532:/# locale -a
C
C.UTF-8
POSIX

Eu configurei minha imagem da seguinte forma:

$ docker pull python:latest
$ docker create python:latest --name python
$ docker run -it python /bin/bash
    
por Paradoxis 23.03.2018 / 11:05

1 resposta

1

A melhor maneira de definir corretamente a localidade é através do Dockerfile ENV settings.

Crie um Dockerfile com o conteúdo:

FROM python:latest
RUN apt-get clean && apt-get update && apt-get install -y locales
RUN sed -i -e 's/# en_US.UTF-8 UTF-8/en_US.UTF-8 UTF-8/' /etc/locale.gen && \
    locale-gen
ENV LANG en_US.UTF-8  
ENV LANGUAGE en_US:en  
ENV LC_ALL en_US.UTF-8

Em seguida, crie uma nova imagem a partir da imagem do Docker do Python. Vamos marcar esta v1

# docker build -t python:v1 .

Teste executando:

# docker run -it --rm --name test python:v1 /bin/bash

Se você verificar sua localidade, isso deve refletir as configurações corretas.

root@ee85b63d6ddf:/# locale -a
C
C.UTF-8
en_US.utf8
POSIX

Leia mais no Aquasec Guias de Administração de contêineres do Docker que abordam a administração básica de tópicos avançados.

    
por 01.04.2018 / 10:19

Tags