12.2.2. Jenkins 환경 변수

Jenkins 서버는 다음 환경 변수로 구성할 수 있습니다.

변수정의값 및 설정 예

OPENSHIFT_ENABLE_OAUTH

Jenkins에 로그인할 때 OpenShift Container Platform 로그인 플러그인이 인증을 관리하는지 여부를 결정합니다. 활성화하려면 true로 설정합니다.

기본값: false

JENKINS_PASSWORD

표준 Jenkins 인증을 사용하는 경우 admin 사용자의 암호입니다. OPENSHIFT_ENABLE_OAUTHtrue로 설정된 경우 해당되지 않습니다.

기본값: password

JAVA_MAX_HEAP_PARAM, CONTAINER_HEAP_PERCENT, JENKINS_MAX_HEAP_UPPER_BOUND_MB

이 값은 Jenkins JVM의 최대 힙 크기를 제어합니다. JAVA_MAX_HEAP_PARAM이 설정된 경우 해당 값이 우선합니다. 설정되지 않은 경우 최대 힙 크기는 컨테이너 메모리 제한의 CONTAINER_HEAP_PERCENT로 동적으로 계산되며, 선택적으로 JENKINS_MAX_HEAP_UPPER_BOUND_MBMiB로 제한될 수 있습니다.

기본적으로 Jenkins JVM의 최대 힙 크기는 제한 없이 컨테이너 메모리 제한의 50%로 설정됩니다.

JAVA_MAX_HEAP_PARAM 설정 예: -Xmx512m

CONTAINER_HEAP_PERCENT 기본값: 0.5 또는 50%

JENKINS_MAX_HEAP_UPPER_BOUND_MB 설정 예: 512 MiB

JAVA_INITIAL_HEAP_PARAM, CONTAINER_INITIAL_PERCENT

이 값은 Jenkins JVM의 초기 힙 크기를 제어합니다. JAVA_INITIAL_HEAP_PARAM이 설정된 경우 해당 값이 우선합니다. 설정되지 않은 경우 초기 힙 크기는 동적으로 계산된 최대 힙 크기의 CONTAINER_INITIAL_PERCENT로 동적으로 계산됩니다.

기본적으로 JVM은 초기 힙 크기를 설정합니다.

JAVA_INITIAL_HEAP_PARAM 설정 예: -Xms32m

CONTAINER_INITIAL_PERCENT 설정 예: 0.1 또는 10%

CONTAINER_CORE_LIMIT

설정되는 경우 내부 JVM 스레드 수를 조정하는 데 사용되는 정수 코어 수를 지정합니다.

설정 예: 2

JAVA_TOOL_OPTIONS

이 컨테이너에서 실행되는 모든 JVM에 적용할 옵션을 지정합니다. 이 값은 재정의하지 않는 것이 좋습니다.

Default: -XX:+UnlockExperimentalVMOptions -XX:+UseCGroupMemoryLimitForHeap -Dsun.zip.disableMemoryMapping=true

JAVA_GC_OPTS

Jenkins JVM 가비지 컬렉션 매개변수를 지정합니다. 이 값은 재정의하지 않는 것이 좋습니다.

Default: -XX:+UseParallelGC -XX:MinHeapFreeRatio=5 -XX:MaxHeapFreeRatio=10 -XX:GCTimeRatio=4 -XX:AdaptiveSizePolicyWeight=90

JENKINS_JAVA_OVERRIDES

Jenkins JVM에 대한 추가 옵션을 지정합니다. 이러한 옵션은 위의 Java 옵션을 포함하여 다른 모든 옵션에 추가되며 필요한 경우 옵션을 재정의하는 데 사용될 수 있습니다. 각각의 추가 옵션을 공백으로 구분합니다. 옵션에 공백 문자가 포함되어 있으면 백슬래시로 이스케이프합니다.

설정 예: -Dfoo -Dbar; -Dfoo=first\ value -Dbar=second\ value

JENKINS_OPTS

Jenkins에 대한 인수를 지정합니다.

 

INSTALL_PLUGINS

컨테이너가 처음 실행되는 경우 또는 OVERRIDE_PV_PLUGINS_WITH_IMAGE_PLUGINStrue로 설정되는 경우 설치할 추가 Jenkins 플러그인을 지정합니다. 플러그인은 쉼표로 구분된 이름:버전 쌍 목록으로 지정됩니다.

설정 예: git:3.7.0,subversion:2.10.2

OPENSHIFT_PERMISSIONS_POLL_INTERVAL

OpenShift Container Platform 로그인 플러그인이 Jenkins에서 정의된 각 사용자에 연관된 권한에 대해 OpenShift Container Platform을 폴링하는 간격(밀리초)을 지정합니다.

기본값: 300000 - 5분

OVERRIDE_PV_CONFIG_WITH_IMAGE_CONFIG

Jenkins 구성 디렉토리에 대해 OpenShift Container Platform 영구 볼륨(PV)을 사용하여 이 이미지를 실행하는 경우 영구 볼륨 클레임(PVC) 이 생성되면 영구 볼륨이 할당되므로 이미지가 처음 시작될 때만 이미지에서 영구 볼륨으로 구성 전송을 수행합니다. 초기 시작 후 이 이미지를 확장하고 사용자 정의 이미지의 구성을 업데이트하는 사용자 정의 이미지를 생성하는 경우 이 환경 변수를 true로 설정하지 않으면 구성이 복사되지 않습니다.

기본값: false

OVERRIDE_PV_PLUGINS_WITH_IMAGE_PLUGINS

Jenkins 구성 디렉토리에 대해 OpenShift Container Platform 영구 볼륨(PV)을 사용하여 이 이미지를 실행하는 경우 영구 볼륨 클레임(PVC )이 생성되면 영구 볼륨이 할당되므로 이미지가 처음 시작될 때만 이미지에서 영구 볼륨으로 플러그인 전송을 수행합니다. 초기 시작 후 이 이미지를 확장하고 사용자 정의 이미지의 플러그인을 업데이트하는 사용자 정의 이미지를 생성하는 경우 이 환경 변수를 true로 설정하지 않으면 플러그인이 복사되지 않습니다.

기본값: false

ENABLE_FATAL_ERROR_LOG_FILE

Jenkins 구성 디렉토리에 대해 OpenShift Container Platform 영구 볼륨 클레임(PVC)으로 이 이미지를 실행하는 경우 이 환경 변수를 사용하면 치명적 오류가 발생할 때 치명적 오류 로그 파일을 유지할 수 있습니다. 치명적 오류 파일은 /var/lib/jenkins/logs에 저장됩니다.

기본값: false

NODEJS_SLAVE_IMAGE

이 값을 설정하면 기본 Node.js 에이전트 pod 구성에 사용되는 이미지가 재정의됩니다. jenkins-agent-nodejs 라는 관련 이미지 스트림 태그는 프로젝트에 있습니다. 이 변수는 Jenkins를 처음 시작하기 전에 설정되어야 효과를 발휘합니다.

Jenkins 서버의 기본 Node.js 에이전트 이미지: image-registry.openshift-image-registry.svc:5000/openshift/jenkins-agent-nodejs:latest

MAVEN_SLAVE_IMAGE

이 값을 설정하면 기본 maven 에이전트 pod 구성에 사용되는 이미지가 재정의됩니다. jenkins-agent-maven라는 관련 이미지 스트림 태그는 프로젝트에 있습니다. 이 변수는 Jenkins를 처음 시작하기 전에 설정되어야 효과를 발휘합니다.

Jenkins 서버의 기본 Maven 에이전트 이미지: image-registry.openshift-image-registry.svc:5000/openshift/jenkins-agent-maven:latest