Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-66808

UTF-8 encoding went missing from blueocean 1.25.0 docker image

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Major Major
    • blueocean-plugin, docker
    • None
    • Blueocean Docker Tag: 1.25.0
      Jenkins: 2.303.1
      OS: Linux - 5.10.47-linuxkit
      Java Runtime: temurin-11.jdk
      Blueocean Plugin: 1.25.0

      Jenkins running on blueocean 1.25.0 docker image is not able to read files with non-ASCII characters in the file name. The problem didn't exist in 1.24.7 and only started happening after upgrading the docker image to 1.25.0.

      Steps to reproduce:
      1. Run container of blueocean docker image 1.24.7
      2. Create a job with non-ASCII characters in job name, e.g. my_日本語_build
      3. Upgrade docker image to 1.25.0 and run the container of new image
      4. Notice the job disappears from both classic and blueocean UIs, though it still exists in $JENKINS_HOME/jobs directory

      The reason is most likely because the UTF-8 encoding installation has some problem in 1.25.0 docker image causing the file.encoding and sun.jnu.encoding properties to be set as ANSI_X3.4-1968 instead of UTF-8.

      file.encoding property can be overridden using JAVA_OPTS but sun.jnu.encoding is set at runtime based on the system settings and cannot be overridden.

      This problem can be solved most likely by setting LANG environment variable to en_US.UTF-8 at the top of the dockerfile. This will allow the following steps involving glibc-i18n and localedef to correctly install UTF-8 encoding in the docker image.

            csanchez Carlos Sanchez
            nitingupta009 Nitin Gupta
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: