Назад | Перейти на главную страницу

Как добавить языковую поддержку в CentOS 7 (на Docker)?

Я пытаюсь установить японский язык, но образ CentOS в докере не поддерживает языковую поддержку.

bash-4.2# yum groupinstall -y "Japanese Support"
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirrors.btte.net
 * extras: centos.mirror.secureax.com
 * updates: centos.mirror.secureax.com
Warning: group Japanese Support does not exist.
Maybe run: yum groups mark install (see man yum)
No packages in any requested group available to install or update

Я проверил grouplist по yum grouplist и yum grouplist hidden и ни одна из них не включает поддержку Японии.
Есть ли способ установить поддержку японского языка?
Заранее спасибо.

У меня была такая же проблема с изображением докера RHEL 7.4. yum reinstall glibc-common само по себе не решило проблему. Была только установка англ.

Я нашел в своем докер-контейнере /etc/yum.conf содержал строку override_install_langs=en_US. Это вызвало yum reinstall glibc-common для установки только англ.

Закомментировав эту строку (или изменив значение по умолчанию для всех) и повторно запустив yum reinstall glibc-common Я мог использовать другие языки

Начальная среда после запуска / присоединения докера

# locale -a
C
POSIX
en_US.utf8
# grep lang /etc/yum.conf
override_install_langs=en_US
# export LANG=fr_FR
# ls foo
ls: cannot access foo: No such file or directory

Моя попытка переустановить glib-common перед изменением /etc/yum.conf

# yum -y -q reinstall glibc-common
Failed to set locale, defaulting to C
# ls foo
ls: cannot access foo: No such file or directory
# locale -a
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_COLLATE to default locale: No such file or directory
C
POSIX
en_US
en_US.iso88591
en_US.iso885915
en_US.utf8
#

После изменения /etc/yum.conf закомментировать строку override_install_langs=en_US

# vi /etc/yum.conf
# grep lang /etc/yum.conf
#override_install_langs=en_US
# yum -y -q reinstall glibc-common
Failed to set locale, defaulting to C
# ls foo
ls: cannot access foo: Aucun fichier ou dossier de ce type
# locale -a | wc -l
789

У меня была аналогичная проблема, потому что образ CentOS поставляется без установленного языкового пакета. Я установил glibc-langpack-en пакет иметь en служба поддержки. Я полагаю, тебе нужно glibc-langpack-ja.

yum install glibc-langpack-ja

Вам необходимо переустановить glibc-common пакет. Вот доказательство:

docker run -it --rm centos bash -c 'locale -a | wc -l && yum -y -q reinstall glibc-common && locale -a | wc -l'
53
789

Примечание: locale -a перечисляет установленные языковые стандарты и wc -l считает их, поэтому эти числа представляют собой количество локалей до и после переустановки glibc-common.