docker ubuntu / bin / sh: 1: locale-gen: tidak ditemukan

101

Saya memasukkan kode pengaturan lokal di bawah ini ke dalam file galangan saya,

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

tapi itu memberi saya kesalahan

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

ada ide?

Palu
sumber
13
Mungkin Anda harus menginstal localesmenggunakan sudo apt-get -y install locales?
edwinksl

Jawaban:

199

Terima kasih atas komentar Anda, edwinksl . Saya memperbarui file galangan saya di bawah ini yang memecahkan kesalahan gen lokal:

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
Palu
sumber
29
Untuk efisiensi, Anda sebaiknya menghindari beberapa RUNpernyataan, terutama bila terkait erat seperti ini. Sesuatu seperti RUN apt-get clean && apt-get -y update && apt-get install -y locales && locale-gen en_US.UTF-8akan membuat satu lapisan, bukan tiga.
tripleee
8
Mungkin update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8juga berguna askubuntu.com/a/505424/196423
koppor
1
Untuk menjaga kewarasan Anda, Anda sebaiknya menghindari menyimpan semua perintah Anda bersama-sama dalam satu JALANKAN
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 juga bagus untuk digunakan.

Izana
sumber