Instalé un contenedor Ubuntu Trusty usando Docker, y cuando me conecto a él, puedo ver que la configuración regional está configurada al mínimo:
sudo docker run -i -t <id> /bin/bash
root@<id>:/# locale
LANG=
LANGUAGE=
LC_CTYPE="POSIX"
LC_NUMERIC="POSIX"
LC_TIME="POSIX"
LC_COLLATE="POSIX"
LC_MONETARY="POSIX"
LC_MESSAGES="POSIX"
LC_PAPER="POSIX"
LC_NAME="POSIX"
LC_ADDRESS="POSIX"
LC_TELEPHONE="POSIX"
LC_MEASUREMENT="POSIX"
LC_IDENTIFICATION="POSIX"
LC_ALL=
Necesito usar una configuración regional Unicode (por ejemplo, la de inglés de EE. UU en_US.UTF-8
.).
Intenté editar el archivo / etc / default / locale y poner esto dentro:
# cat /etc/default/locale
LANG=en_US.UTF-8
Pero incluso después de abandonar el contenedor y volver, la configuración regional todavía no está configurada correctamente.
También intenté usar el update-locale
comando, sin ningún éxito:
root@cab13a6abe4f:/# update-locale LANG=en_US.UTF-8
root@cab13a6abe4f:/# locale
LANG=
LANGUAGE=
LC_CTYPE="POSIX"
LC_NUMERIC="POSIX"
LC_TIME="POSIX"
LC_COLLATE="POSIX"
LC_MONETARY="POSIX"
LC_MESSAGES="POSIX"
LC_PAPER="POSIX"
LC_NAME="POSIX"
LC_ADDRESS="POSIX"
LC_TELEPHONE="POSIX"
LC_MEASUREMENT="POSIX"
LC_IDENTIFICATION="POSIX"
LC_ALL=
En mi configuración local, tengo la siguiente configuración:
LANG=en_US.UTF-8
LANGUAGE=en_US
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC=en_US.UTF-8
LC_TIME=en_US.UTF-8
LC_COLLATE="en_US.UTF-8"
LC_MONETARY=en_US.UTF-8
LC_MESSAGES="en_US.UTF-8"
LC_PAPER=en_US.UTF-8
LC_NAME=en_US.UTF-8
LC_ADDRESS=en_US.UTF-8
LC_TELEPHONE=en_US.UTF-8
LC_MEASUREMENT=en_US.UTF-8
LC_IDENTIFICATION=en_US.UTF-8
LC_ALL=
¿Cómo puedo tener lo mismo en mi contenedor Docker?
¡Gracias por adelantado!
sudo docker build .
) y funciona bien.Yo uso esto en mi
Dockerfile
:También se puede usar el
ENV
one-liner:fuente
locale -a
muestra que la configuración regional se ha eliminado por completo de la imagen base.locale-gen
lo genera de nuevo y lo pone a disposición.dockerfile
? ¿Se puede editar para la imagen descargada?Dockerfile
en el directorio de su proyecto y utilizar laFROM
directiva para ampliar una imagen existente. Luego solo agregue las líneas mencionadas. Encuentre más sobre elDockerfile
aquílocale-gen: not found
. Solución: stackoverflow.com/a/39761477/1743367Tratar
Si recibe el
unsupported locale setting
error y no desea instalar ninguna nueva configuración regional.fuente
docker-compose run --rm -e TERM=xterm -e LANG=C.UTF-8 worker bash
Intenté esto y me ayudó
Dockerfile
después de mi imagen agreguéy correr
fuente