docker ubuntu / bin / sh:1:locale-gen:が見つかりません


95

以下のロケール設定コードを私のdockerfileに入れます、

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

しかし、それは私にエラーを与えます

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

何か案が?


13
多分あなたはをlocales使用してインストールする必要がありsudo apt-get -y install localesますか?
edwinksl

回答:


188

edwinksl、コメントありがとうございます。以下の私のdockerfileを更新して、locale-genエラーを解決しました。

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

26
効率を上げるためにRUN、特にこのように密接に関連している場合は、複数のステートメントを回避する必要があります。のようなものRUN apt-get clean && apt-get -y update && apt-get install -y locales && locale-gen en_US.UTF-8は、3つではなく1つのレイヤーを作成します。
tripleee 2017

8
多分update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8役に立つかもしれませんaskubuntu.com/a/505424/196423
koppor
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.