2.2.9. Java 환경 변수


다음 표에서는 OpenJDK 컨테이너의 동작을 구성하는 데 사용되는 Java 환경 변수의 포괄적인 목록을 제공합니다.

표 2.1. 구성 환경 변수
변수 이름설명예시 값

AB_JOLOKIA_CONFIG

설정하는 경우 Jolokia 참조 매뉴얼 에 설명된 대로 Jolokia JVM 에이전트 속성으로 경로를 포함하여 이 파일을 사용합니다. 설정되지 않은 경우, /opt/jolokia/etc/jolokia.properties 는 설명서에 정의된 설정을 사용하여 생성됩니다. 그렇지 않으면 이 문서의 나머지 설정이 무시됩니다.

/opt/jolokia/custom.properties

AB_JOLOKIA_DISCOVERY_ENABLED

Jolokia discovery를 활성화합니다. 기본값은 false입니다.

true

AB_JOLOKIA_HOST

바인딩할 호스트 주소입니다. 기본값은 0.0.0.0 입니다.

127.0.0.1

AB_JOLOKIA_ID

사용할 에이전트 ID입니다. 기본값은 컨테이너 ID인 $HOSTNAME 입니다.

openjdk-app-1-xqlsj

AB_JOLOKIA_OFF

설정된 경우 Jolokia의 활성화를 비활성화합니다(예: 빈 값을 에코). 기본적으로 Jolokia는 활성화되어 있습니다.

true

AB_JOLOKIA_OPTS

에이전트 구성에 추가할 추가 옵션입니다. key=value,key=value,…​ 형식으로 지정해야 합니다.

backlog=20

AB_JOLOKIA_PASSWORD

기본 인증에 대한 암호입니다. 기본적으로 인증이 꺼집니다.

mypassword

AB_JOLOKIA_PORT

수신 대기할 포트입니다. 기본값은 8778 입니다.

5432

AB_JOLOKIA_USER

기본 인증에 사용되는 사용자입니다. 기본값은 jolokia 입니다.

MyUserName

AB_PROMETHEUS_ENABLE

Prometheus 에이전트 사용을 활성화합니다.

true

AB_PROMETHEUS_JMX_EXPORTER_PORT

Prometheus 10.3 Exporter에 사용할 포트입니다.

9799

CONTAINER_CORE_LIMIT

CFS Bandwidth Control 에 설명된 대로 계산된 코어 제한입니다.

2

CONTAINER_MAX_MEMORY

컨테이너에 지정된 메모리 제한입니다.

1024

GC_ADAPTIVE_SIZE_POLICY_WEIGHT

현재 GC 시간에 지정된 가중치와 이전 GC 시간 비교

90

GC_CONTAINER_OPTIONS

사용할 Java GC를 지정합니다. 이 변수의 값에는 -XX:+UseParallelOldGC 의 기본값을 재정의하는 데 필요한 GC를 지정하는 데 필요한 idrac 명령행 인터페이스 옵션이 포함되어야 합니다.

-XX:+UseG1GC

GC_MAX_HEAP_FREE_RATIO

축소를 방지하기 위해 GC 뒤의 최대 힙 백분율입니다.

40

GC_MAX_METASPACE_SIZE

최대 메타 공간 크기입니다.

100

GC_METASPACE_SIZE

초기 메타 공간 크기입니다.

20

GC_MIN_HEAP_FREE_RATIO

확장을 방지하기 위해 GC 후에 여유 힙의 최소 백분율입니다.

20

GC_TIME_RATIO

가비지 컬렉션 외부에서 소비된 시간(예: 애플리케이션 실행에 사용된 시간)을 가비지 수집에서 소비한 시간(예: 가비지 수집에서 소비한 시간)을 지정합니다.

4

HTTPS_PROXY

https 프록시의 위치입니다. 이는 http_proxyHTTP_PROXY 보다 우선하며 Maven 빌드 및 Java 런타임 모두에 사용됩니다.

myuser@127.0.0.1:8080

HTTP_PROXY

http 프록시의 위치입니다. 이는 Maven 빌드 및 Java 런타임 모두에 사용됩니다.

127.0.0.1:8080

JAVA_APP_DIR

애플리케이션이 상주하는 디렉터리입니다. 애플리케이션의 모든 경로는 이 디렉터리를 기준으로 합니다.

myapplication/`

JAVA_ARGS

Java 애플리케이션에 전달된 인수 입니다.

-

JAVA_CLASSPATH

사용할 classpath입니다. 지정하지 않으면 시작 스크립트는 JAVA_APP_DIR/classpath 파일을 확인하고 문자 그대로 해당 콘텐츠를 classpath로 사용합니다. 이 파일이 없으면 앱 디렉터리의 모든 JAR이 추가됩니다. (Class:JAVA_APP_DIR/*)입니다.

-

JAVA_DEBUG

설정되어 있으면 원격 디버깅이 설정됩니다. 기본적으로 비활성되어 있습니다.

true

JAVA_DEBUG_PORT

원격 디버깅에 사용되는 포트입니다. 기본값은 5005 입니다.

8787

JAVA_DIAGNOSTICS

문제가 발생할 때 표준 출력에 일부 진단 정보를 가져오도록 이 변수를 설정합니다. 기본적으로 비활성되어 있습니다.

true

JAVA_INITIAL_MEM_RATIO

JAVA_OPTS-Xms 옵션이 제공되지 않을 때 사용됩니다. 이는 최대 힙 메모리를 기반으로 기본 초기 힙 메모리를 계산하는 데 사용됩니다. 컨테이너에 메모리 제약 조건이 없는 컨테이너에서 사용하는 경우 이 옵션은 적용되지 않습니다. 메모리 제약 조건이 있는 경우 -Xms 는 여기에 설정된 -Xmx 메모리의 비율로 설정됩니다. 기본값은 25 이며, -Xmx 의 25%는 초기 힙 크기로 사용됩니다. 이 값을 0 으로 설정하여 이 메커니즘을 건너뛸 수 있습니다. 이 경우 -Xms 옵션이 추가되지 않습니다.

25

JAVA_LIB_DIR

Java JAR 파일을 포함하는 디렉토리 및 classpath 파일을 단일 줄 클래스 경로(colon separated)로 보유하거나 명령줄에 대한 JAR 파일(line-by-line)을 사용하여 classpath를 보유하고 있습니다. 설정하지 않는 경우 JAVA_LIB_DIRJAVA_APP_DIR 과 동일합니다.

-

JAVA_MAIN_CLASS

Java 에 대한 인수로 사용할 기본 클래스 입니다. 이 환경 변수가 지정되면 JAVA_APP_DIR 의 모든 JAR 파일이 classpath 및 JAVA_LIB_DIR 에 추가됩니다.

com.example.MainClass

JAVA_MAX_INITIAL_MEM

JAVA_OPTS-Xms 옵션이 제공되지 않을 때 사용됩니다. 초기 힙 메모리의 최대 값을 계산하는 데 사용됩니다. 컨테이너에 메모리 제약 조건이 없는 컨테이너에서 사용하는 경우 이 옵션은 적용되지 않습니다. 메모리 제약 조건이 있는 경우 -Xms 는 여기에 설정된 값으로 제한됩니다. 기본값은 4096 MB이며, 이는 계산된 -Xms 값이 4096MB보다 크지 않음을 의미합니다. 이 변수의 값은 MB로 표시됩니다.

4096

JAVA_MAX_MEM_RATIO

JAVA_OPTS-Xmx 옵션이 제공되지 않을 때 사용됩니다. 이는 컨테이너 제한에 따라 기본 최대 힙 메모리를 계산하는 데 사용됩니다. 컨테이너에 메모리 제약 조건이 없는 컨테이너에서 사용하는 경우 이 옵션은 적용되지 않습니다. 메모리 제약 조건이 있는 경우 -Xmx 는 여기에 설정된 컨테이너 사용 가능한 메모리의 비율로 설정됩니다. 기본값은 50 이며, 이는 사용 가능한 메모리의 50%가 상한 경계로 사용됩니다. 이 값을 0 으로 설정하여 이 메커니즘을 건너뛸 수 있습니다. 이 경우 -Xmx 옵션이 추가되지 않습니다.

-

JAVA_OPTS

Java 명령에 JVM 옵션이 전달됩니다.

-verbose:class

JAVA_OPTS_APPEND

JAVA_OPTS 의 생성된 옵션에 사용자 지정 Java 옵션이 추가됩니다.

-Dsome.property=foo

LOGGING_SCRIPT_DEBUG

스크립트 디버깅을 활성화하려면 true 로 설정합니다. SCRIPT_DEBUG 사용 중단

true

MAVEN_ARGS

Maven을 호출할 때 사용할 인수는 기본 패키지 hawt-app:build -DskipTests -e 를 대체합니다. 패키지 실행 단계에 아직 바인딩되지 않은 경우 hawt-app:build 목표를 실행해야 합니다. 그렇지 않으면 시작 스크립트가 작동하지 않습니다.

-e -Popenshift -DskipTests -Dcom.redhat.xpaas.repo.redhatga 패키지

MAVEN_ARGS_APPEND

추가 Maven 인수입니다.

-X -am -pl

MAVEN_CLEAR_REPO

설정된 경우 아티팩트가 빌드된 후 Maven 리포지토리가 제거됩니다. 생성된 애플리케이션 이미지를 작게 유지하는 데 유용하지만 증분 빌드는 방지할 수 있습니다. 이 변수는 S2I_ENABLE_INCREMENTAL_BUILDS 로 재정의됩니다. 기본값은 false입니다.

-

MAVEN_LOCAL_REPO

로컬 Maven 리포지토리로 사용할 디렉터리입니다.

/home/jboss/.m2/repository

MAVEN_MIRRORS

설정된 경우 다중 미러 지원이 활성화되고 기타 MAVEN_MIRROR_* 변수 접두사가 붙습니다. 예를 들어 DEV_ONE_MAVEN_MIRROR_URLQE_TWO_MAVEN_MIRROR_URL.

dev-one,qe-two

MAVEN_MIRROR_URL

아티팩트를 검색하는 데 사용되는 미러의 기본 URL입니다.

http://10.0.0.1:8080/repository/internal/

MAVEN_REPOS

설정된 경우 multi-repo 지원이 활성화되고 기타 MAVEN_REPO_* 변수가 접두사가 붙습니다. 예를 들어 DEV_ONE_MAVEN_REPO_URLQE_TWO_MAVEN_REPO_URL.

dev-one,qe-two

MAVEN_S2I_ARTIFACT_DIRS

DEPLOY_DIR 에 복사되는 빌드 출력을 스캔할 소스 디렉터리의 상대 경로입니다. 기본값은 target 입니다.

대상

MAVEN_S2I_GOALS

maven 빌드와 함께 실행할 수 있는 공백으로 구분된 대상 목록입니다. 예를 들어 mvn $MAVEN_S2I_GOALS. 기본값은 패키지 입니다.

패키지 설치

MAVEN_SETTINGS_XML

사용할 사용자 지정 Maven settings.xml 파일의 위치입니다.

/home/jboss/.m2/settings.xml

NO_PROXY

직접 액세스할 수 있는 쉼표로 구분된 호스트, IP 주소 또는 도메인 목록입니다. 이는 Maven 빌드 및 Java 런타임 모두에 사용됩니다.

foo.example.com,bar.example.com

S2I_ARTIFACTS_DIR

증분 빌드에 사용되는 save-artifacts 스크립트와 함께 유지되는 아티팩트의 위치 마운트입니다. 이는 최종 사용자가 재정의해서는 안 됩니다.

${S2I_DESTINATION_DIR}/artifacts}

S2I_DESTINATION_DIR

io.openshift.s2i.destination 라벨에 지정된 대로 S2I 마운트용 루트 디렉터리입니다. 이는 최종 사용자가 재정의해서는 안 됩니다.

/tmp

S2I_ENABLE_INCREMENTAL_BUILDS

향후 빌드에 사용할 수 있도록 소스 및 중간 빌드 파일을 제거하지 마십시오. 기본값은 true 입니다.

true

S2I_IMAGE_SOURCE_MOUNTS

이미지에 포함되어야 하는 소스 디렉토리에 있는 상대 경로의 쉼표로 구분된 목록입니다. 목록에는 find를 사용하여 확장된 와일드카드가 포함될 수 있습니다. 기본적으로 마운트된 디렉터리의 콘텐츠는 소스 폴더와 유사하게 처리됩니다. 여기서 S2I_SOURCE_CONFIGURATION_DIR,S2I_SOURCE_DATA_DIRS2I_SOURCE_DEPLOYMENTS_DIR 은 각각의 대상 디렉터리에 복사됩니다. 또는 install.sh 파일이 마운트 지점의 루트에 있는 경우 대신 실행됩니다. CUSTOM_INSTALL_DIRECTORIES 사용 중단

extras/*

S2I_SOURCE_CONFIGURATION_DIR

제품 구성 디렉토리에 복사할 애플리케이션 구성 파일이 포함된 디렉터리의 상대 경로는 S2I_TARGET_CONFIGURATION_DIR 을 참조하십시오. 기본값은 configuration 입니다.

configuration

S2I_SOURCE_DATA_DIR

제품 데이터 디렉토리에 복사할 애플리케이션 데이터 파일이 포함된 디렉터리의 상대 경로는 S2I_TARGET_DATA_DIR 을 참조하십시오. 기본값은 data 입니다.

data

S2I_SOURCE_DEPLOYMENTS_DIR

제품 배포 디렉토리에 복사할 바이너리 파일이 포함된 디렉터리의 상대 경로는 S2I_TARGET_DEPLOYMENTS_DIR 을 참조하십시오. 기본값은 deployment 입니다.

배포

S2I_SOURCE_DIR

빌드할 소스 코드 마운트 위치. 이는 최종 사용자가 재정의해서는 안 됩니다.

${S2I_DESTINATION_DIR}/src}

S2I_TARGET_CONFIGURATION_DIR

S2I_SOURCE_DIR/S2I_SOURCE_CONFIGURATION_DIR 에 있는 파일의 절대 경로가 복사됩니다.

/opt/eap/standalone/configuration

S2I_TARGET_DATA_DIR

S2I_SOURCE_DIR/S2I_SOURCE_DATA_DIR 에 있는 파일의 절대 경로가 복사됩니다.

/opt/eap/standalone/data

S2I_TARGET_DEPLOYMENTS_DIR

S2I_SOURCE_DIR/S2I_SOURCE_DEPLOYMENTS_DIR 에 있는 파일의 절대 경로가 복사됩니다. 또한 이 디렉터리는 빌드 출력이 복사되는 디렉터리입니다.

/deployments

http_proxy

http 프록시의 위치입니다. 이는 HTTP_PROXY 보다 우선하며 Maven 빌드 및 Java 런타임 모두에 사용됩니다.

http://127.0.0.1:8080

https_proxy

https 프록시의 위치입니다. 이는 HTTPS_PROXY,http_proxyHTTP_PROXY 보다 우선하며 Maven 빌드 및 Java 런타임 모두에 사용됩니다.

myuser:mypass@127.0.0.1:8080

no_proxy

직접 액세스할 수 있는 쉼표로 구분된 호스트, IP 주소 또는 도메인 목록입니다. 이는 NO_PROXY 보다 우선하며 Maven 빌드 및 Java 런타임 모두에 사용됩니다.

*.example.com

prefix_MAVEN_MIRROR_ID

지정된 미러에 사용할 ID입니다. 생략하면 고유한 ID가 생성됩니다.

internal-mirror

prefix_MAVEN_MIRROR_OF

이 항목으로 미러링된 저장소 ID입니다. 기본값은 external: 입니다.

-

prefix_MAVEN_MIRROR_URL

미러의 URL입니다.

http://10.0.0.1:8080/repository/internal

prefix_MAVEN_REPO_DIRECTORY_PERMISSIONS

Maven 리포지토리 디렉터리 권한.

775

prefix_MAVEN_REPO_FILE_PERMISSIONS

Maven 리포지토리 파일 권한.

664

prefix_MAVEN_REPO_HOST

완전히 정의된 URL을 사용하지 않는 경우 Maven 리포지토리 호스트는 서비스로 돌아갑니다.

repo.example.com

prefix_MAVEN_REPO_ID

Maven 리포지토리 ID입니다.

my-repo-id

prefix_MAVEN_REPO_LAYOUT

Maven 리포지토리 레이아웃.

default

prefix_MAVEN_REPO_NAME

Maven 리포지토리 이름입니다.

my-repo-name

prefix_MAVEN_REPO_PASSPHRASE

Maven 리포지토리 암호입니다.

maven1!

prefix_MAVEN_REPO_PASSWORD

Maven 리포지토리 암호입니다.

maven1!

prefix_MAVEN_REPO_PATH

완전히 정의된 URL을 사용하지 않는 경우 Maven 리포지토리 경로는 서비스로 전환됩니다.

/maven2/

prefix_MAVEN_REPO_PORT

완전히 정의된 URL을 사용하지 않는 경우 Maven 리포지토리 포트는 서비스로 돌아갑니다.

8080

prefix_MAVEN_REPO_PRIVATE_KEY

Maven 리포지토리 개인 키.

${user.home}/.ssh/id_dsa

prefix_MAVEN_REPO_PROTOCOL

완전히 정의된 URL을 사용하지 않는 경우 Maven 리포지토리 프로토콜은 서비스로 돌아갑니다.

http

prefix_MAVEN_REPO_RELEASES_CHECKSUM_POLICY

Maven 리포지토리는 체크섬 정책을 릴리스합니다.

warn

prefix_MAVEN_REPO_RELEASES_ENABLED

Maven 리포지토리가 활성화되어 있습니다.

true

prefix_MAVEN_REPO_RELEASES_UPDATE_POLICY

Maven 리포지토리가 업데이트 정책을 릴리스합니다.

always

prefix_MAVEN_REPO_SERVICE

prefix_MAVEN_REPO_URL 이 지정되지 않은 경우 조회할 Maven 리포지토리 서비스입니다.

buscentr-myapp

prefix_MAVEN_REPO_SNAPSHOTS_CHECKSUM_POLICY

Maven 리포지토리 스냅샷 체크섬 정책.

warn

prefix_MAVEN_REPO_SNAPSHOTS_ENABLED

Maven 리포지토리 스냅샷이 활성화됩니다.

true

prefix_MAVEN_REPO_SNAPSHOTS_UPDATE_POLICY

Maven 리포지토리 스냅샷 업데이트 정책.

always

prefix_MAVEN_REPO_URL

Maven 리포지토리가 완전히 정의된 URL입니다.

http://repo.example.com:8080/maven2/

prefix_MAVEN_REPO_USERNAME

Maven 리포지토리 사용자 이름.

mavenUser

표 2.2. 기본값을 사용하는 구성 환경 변수
변수 이름설명

AB_JOLOKIA_AUTH_OPENSHIFT

OpenShift TLS 통신을 위해 클라이언트 인증을 전환합니다. 이 매개 변수의 값은 제시된 클라이언트의 인증서에 포함되어야 하는 상대 고유 이름일 수 있습니다. 이 매개변수를 활성화하면 Jolokia가 https 통신 모드로 자동 전환됩니다. 기본 CA 인증서는 /var/run/secrets/kubernetes.io/serviceaccount/ca.crt 로 설정됩니다.

true

AB_JOLOKIA_HTTPS

https를 사용하여 보안 통신을 전환합니다. 기본적으로 AB_JOLOKIA_OPTSserverCert 구성이 제공되지 않는 경우 자체 서명 서버 인증서가 생성됩니다.

true

AB_JOLOKIA_PASSWORD_RANDOM

임의의 AB_JOLOKIA_PASSWORD 가 생성되었는지 여부를 확인합니다. 임의의 암호를 생성하려면 true 로 설정합니다. 생성된 값은 /opt/jolokia/etc/jolokia.pw 에 작성됩니다.

true

AB_PROMETHEUS_JMX_EXPORTER_CONFIG

Prometheus 10.3 Exporter에 사용할 구성 경로입니다.

/opt/jboss/container/prometheus/etc/jmx-exporter-config.yaml

S2I_SOURCE_DEPLOYMENTS_FILTER

배포를 복사할 때 적용할 공백으로 구분된 필터 목록입니다. 기본값은 * 입니다.

*

Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.