'da çalıştı. Aylardır büyük bir baş ağrısıyla yaşadım. Sürekli bir entegrasyon boru hattı ile çalışıyoruz ve adımlardan biri npm testinin tetiklediği, jenkin'in bir docker konteynerinde çalışan slave içinde gerçekleşecek otomatik bir testtir, Jenkins'in kendisi başka bir konteynırdadır. Çıktı böyle kırıldı göstererek edilir kurar sırasında : o Googling tarafındanJenkins tarafından tetiklenen npm test çıkışında kırık kodlama docker
[email protected] node_modules/node-schedule
��������� [email protected]
Bu unix sisteminde an issue caused by not setting the locale olduğunu gördük. Dockerfile'da Ortam değişkenleri eklemeyi denedim, ancak yine de hiç şansım olmadı. Ayrıca yerel-gen çalışan denedim ve komut bulunamadı hatası alıyorum:
RUN locale-gen ${LANGUAGE}
ben yüklemeden deneyin buldum hiçbir aday paket alır.
RUN apt-get install locales
İşte kölenin Dockerfile.
# NODEJS SLAVE
# Pull base image.
FROM node:0.10.42
ENV LANG_WHICH en
ENV LANG_WHERE US
ENV ENCODING UTF-8
ENV LANGUAGE ${LANG_WHICH}_${LANG_WHERE}.${ENCODING}
ENV LANG ${LANGUAGE}
RUN dpkg-reconfigure --frontend noninteractive locales \
&& apt-get update -qqy \
&& apt-get -qqy install \
language-pack-en \
RUN apt-get install -y nano openssh-server openjdk-7-jdk \
&& apt-get -y upgrade
EXPOSE 8080
<... ssh stuff...>
COPY package.json /src/package.json
RUN npm install -g npm
# Standard SSH port
EXPOSE 22
CMD ["/usr/sbin/sshd", "-D"]
Ve bu Jenkins master kabın Dockerfile
# JENKINS MASTER
# Set the base image to Ubuntu
FROM jenkins:latest
ENV LANG_WHICH en
ENV LANG_WHERE US
ENV ENCODING UTF-8
ENV LANGUAGE ${LANG_WHICH}_${LANG_WHERE}.${ENCODING}
ENV LANG ${LANGUAGE}
RUN localedef en_US.UTF-8 -i en_US -fUTF-8
RUN dpkg-reconfigure --frontend noninteractive locales \
&& apt-get update -qqy \
&& apt-get -qqy install \
language-pack-en \
USER jenkins
ENV LANG en_US.UTF-8
ENV LANGUAGE en_US:en
ENV LC_ALL en_US.UTF-8
COPY plugins.txt /usr/share/jenkins/plugins.txt
COPY executors.groovy /usr/share/jenkins/ref/init.groovy.d/executors.groovy
RUN /usr/local/bin/plugins.sh /usr/share/jenkins/plugins.txt
herkes bu sorunun çözümü hakkında bazı bilgiler vermektedir miyim?
GÜNCELLEME: Xenial:
Ben ubuntu için temel görüntü değiştirerek yerel-gen kullanmayı başardı. Ama bu da işe yaramadı. Görünüşe göre jenkins, non-interactive shell aracılığıyla slave'lere bağlanır ve bu da gerekli yapılandırmaların yüklenmemesine neden olur (/etc/profile
ve /etc/default/locale
). Ben de ekleyerek denedim:
USER jenkins
RUN echo "export=LC_ALL=en_US.UTF-8" >> /etc/.bashrc
Ama bu da çalıştı olmadı. HERE, şu anda kullanıyorum tam Dockerfile.
Try bulunabilir, doğru YOL değişken kümesi olmayabilir. –
denedi ... Ayrıca başka bir temel görüntü ile Dockerfile inşa ... ubunto: xenial ... ve anlaşma yok –