docker ubuntu / bin / sh: 1: locale-gen: nicht gefunden


94

Ich habe die folgenden Ländereinstellungscodes in meine Docker-Datei eingefügt.

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

aber es gibt mir den Fehler

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

irgendeine Idee?


13
Vielleicht müssen Sie installieren localesverwenden sudo apt-get -y install locales?
Edwinksl

Antworten:


187

Danke für deinen Kommentar, edwinksl . Ich habe meine Docker-Datei unten aktualisiert, wodurch der Fehler im Gebietsschema behoben wurde:

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
Aus Effizienzgründen sollten Sie mehrere RUNAussagen vermeiden , insbesondere wenn sie so eng miteinander verbunden sind. So etwas RUN apt-get clean && apt-get -y update && apt-get install -y locales && locale-gen en_US.UTF-8würde eine einzelne Ebene anstelle von drei erstellen.
Tripleee

8
Vielleicht update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8ist auch nützlich askubuntu.com/a/505424/196423
koppor
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.