docker ubuntu / bin / sh: 1: locale-gen: bulunamadı


102

Aşağıdaki yerel ayar kodlarını dockerfile dosyama koydum,

FROM node:4-onbuild

# Set the locale
RUN locale-gen en_US.UTF-8
ENV LANG en_US.UTF-8
ENV LANGUAGE en_US:en
ENV LC_ALL en_US.UTF-8

ama bana hata veriyor

/bin/sh: 1: locale-gen: not found
The command '/bin/sh -c locale-gen en_US.UTF-8' returned a non-zero code: 127

Herhangi bir fikir?


13
Belki localeskullanarak yüklemeniz gerekir sudo apt-get -y install locales?
edwinksl

Yanıtlar:


201

Yorumunuz için teşekkürler edwinksl . Yerel ayar-gen hatasını çözen dockerfile'ımı aşağıda güncelledim:

FROM node:4-onbuild

# Set the locale
RUN apt-get clean && apt-get update && apt-get install -y locales
RUN locale-gen en_US.UTF-8

29
Verimlilik için RUN, özellikle bunun gibi yakından ilişkili olduklarında, birden çok ifadeden kaçınmak isteyeceksiniz . Gibi RUN apt-get clean && apt-get -y update && apt-get install -y locales && locale-gen en_US.UTF-8bir şey , üç yerine tek bir katman oluşturabilir.
üçlü

8
Belki update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8de yararlıdır askubuntu.com/a/505424/196423
koppor

1
Akıl sağlığınızı korumak için, tüm komutlarınızı tek bir KOŞUDA saklamaktan kaçınmak isteyeceksiniz
mihai

0
apt-get install -y locales
localedef -i en_US -c -f UTF-8 -A /usr/share/locale/locale.alias en_US.UTF-8

localedef'in kullanımı da iyidir.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.