5.3. 配置环境变量
配置环境变量旨在方便地调整镜像,而无需重新构建镜像,并应根据需要由用户设置。
变量名称 | 描述 | 默认值 | 示例值 |
---|---|---|---|
AB_JOLOKIA_CONFIG |
如果设置使用此文件(包括路径)为 Jolokia JVM 代理属性(如 Jolokia 参考手册中所述)。如果没有设置,将使用手册中定义的设置创建 | - | /opt/jolokia/custom.properties |
AB_JOLOKIA_DISCOVERY_ENABLED | 启用 Jolokia 发现。 | false | true |
AB_JOLOKIA_HOST | 要绑定到的主机地址。 | 0.0.0.0 | 127.0.0.1 |
AB_JOLOKIA_ID | 要使用的代理 ID,即容器 ID。 |
| openjdk-app-1-xqlsj |
AB_JOLOKIA_OFF | 如果设置禁用 Joloka 激活(即,回显空值)。 | 启用了 Jolokia | true |
AB_JOLOKIA_OPTS |
要附加到代理配置中的附加选项。它们应该使用 | - | 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 JMX Exporter 的端口。 | - | 9799 |
CONTAINER_CORE_LIMIT | 计算的核心限制,如 CFS 带宽控制 中所述。 | - | 2 |
CONTAINER_MAX_MEMORY | 分配给容器的内存限值。 | - | 1024 |
GC_ADAPTIVE_SIZE_POLICY_WEIGHT | 提供给当前垃圾收集器时间与之前垃圾收集器时间的权重。 | - | 90 |
GC_CONTAINER_OPTIONS | 指定要使用的 Java GC。此变量的值应包含必要的 JRE 命令行选项来指定所需的 GC,这将覆盖默认值。 | -XX:+UseParallelOldGC | -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_proxy 和 HTTP_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_CLASSPATH |
要使用的类路径。如果没有提供,启动脚本会检查文件 | - | - |
JAVA_DEBUG | 如果设置了远程调试,则会打开。 | false | true |
JAVA_DEBUG_PORT | 用于远程调试的端口。 | 5005 | 8787 |
JAVA_DIAGNOSTICS | 将其设置为在运行命令期间将一些诊断信息输出到标准输出。 | false | true |
JAVA_INITIAL_MEM_RATIO |
当 | 25 | 25 |
JAVA_LIB_DIR |
包含 Java jar 文件的目录以及包含 | JAVA_APP_DIR | - |
JAVA_MAIN_CLASS |
用作 | - | com.example.MainClass |
JAVA_MAX_INITIAL_MEM |
当 | 4096 | 4096 |
JAVA_MAX_MEM_RATIO |
当 | 50 | - |
JAVA_OPTS |
传递给 | - | -verbose:class |
JAVA_OPTS_APPEND | 要附加到 JAVA_OPTS 中生成的选项的用户指定的 Java 选项。 | - | -Dsome.property=foo |
LOGGING_SCRIPT_DEBUG |
设置为 true 以启用脚本调试。弃用 | true | True |
MAVEN_ARGS |
调用 Maven 时使用的参数,替换 | package hawt-app:build -DskipTests -e | -e -Popenshift -DskipTests -Dcom.redhat.xpaas.repo.redhatga package |
MAVEN_ARGS_APPEND | 其他 Maven 参数。 | - | -X -am -pl |
MAVEN_CLEAR_REPO |
如果设置,则 Maven 存储库会在工件构建后被删除。这可用于将创建的应用镜像的大小缩小到小,但可防止 增量构建。将被 | false | - |
MAVEN_LOCAL_REPO | 用作本地 Maven 存储库的目录。 | - | /home/jboss/.m2/repository |
MAVEN_MIRRORS |
如果设置,则启用多镜像支持,其他 | - | dev-one,qe-two |
MAVEN_MIRROR_URL | 用于检索工件的镜像的基本 URL。 | - | |
MAVEN_REPOS |
如果设置了多存储库支持,则启用多存储库支持,其他 | - | dev-one,qe-two |
MAVEN_S2I_ARTIFACT_DIRS |
要扫描构建输出的源目录的相对路径,该路径将复制到 | target | target |
MAVEN_S2I_GOALS |
使用 Maven 构建执行的以空格分隔的目标列表。例如, | package | 软件包安装 |
MAVEN_SETTINGS_XML |
要使用的自定义 Maven | - | /home/jboss/.m2/settings.xml |
NO_PROXY | 可直接访问的主机、IP 地址或域的逗号分隔列表。这将用于 Maven 构建和 Java 运行时。 | - | foo.example.com,bar.example.com |
S2I_ARTIFACTS_DIR | 使用 save-artifacts 脚本保留工件的位置挂载,这些脚本与增量构建一起使用。这不应该被最终用户覆盖。 | - |
|
S2I_DESTINATION_DIR |
S2I 挂载的根目录,如 | - |
|
S2I_ENABLE_INCREMENTAL_BUILDS | 不要删除源和中间构建文件,以便保存它们以用于将来的构建。 | true | true |
S2I_IMAGE_SOURCE_MOUNTS |
源目录中应包含的相对路径列表,这些路径应包含在镜像中。列表可以包括通配符,这些通配符使用 find 进行扩展。默认情况下,挂载的目录的内容与源文件夹类似处理,其中 | - |
|
S2I_SOURCE_CONFIGURATION_DIR |
包含要复制到产品配置目录的应用程序配置文件的相对路径,请参阅 | 配置 | 配置 |
S2I_SOURCE_DATA_DIR |
包含要复制到产品数据目录的应用程序数据文件的相对路径,请参阅 | data | data |
S2I_SOURCE_DEPLOYMENTS_DIR |
指向包含要复制到产品部署目录的目录的相对路径,请参阅 | 部署 | 部署 |
S2I_SOURCE_DIR | 要构建源代码的挂载位置。这不应该被最终用户覆盖。 | - | ${S2I_DESTINATION_DIR}/src} |
S2I_TARGET_CONFIGURATION_DIR |
复制到 | - | /opt/eap/standalone/configuration |
S2I_TARGET_DATA_DIR |
复制到 | - | /opt/eap/standalone/data |
S2I_TARGET_DEPLOYMENTS_DIR |
复制到位于 | - | /deployments |
http_proxy | HTTP 代理的位置。这优先于 HTTP_PROXY,用于 Maven 构建和 Java 运行时。 | - | |
https_proxy | HTTPS 代理的位置。这优先于 HTTPS_PROXY、http_proxy 和 HTTP_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。 | 外部:* | - |
prefix_MAVEN_MIRROR_URL | 镜像的 URL。 | - | |
prefix_MAVEN_REPO_DIRECTORY_PERMISSIONS | Maven 存储库目录权限。 | - | 775 |
prefix_MAVEN_REPO_FILE_PERMISSIONS | Maven 存储库文件权限。 | - | 664 |
prefix_MAVEN_REPO_HOST | Maven 存储库主机(如果没有使用完全定义的 URL,它将回退到服务)。 | - | 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 | Maven 存储库路径(如果没有使用完全定义的 URL,它将回退到服务)。 | - | /maven2/ |
prefix_MAVEN_REPO_PORT | Maven 存储库端口(如果没有使用完全定义的 URL,它将回退到服务)。 | - | 8080 |
prefix_MAVEN_REPO_PRIVATE_KEY | Maven 存储库私钥。 | - | ${user.home}/.ssh/id_dsa |
prefix_MAVEN_REPO_PROTOCOL | Maven 存储库协议(如果没有使用完全定义的 URL,它将回退到服务)。 | - | http |
prefix_MAVEN_REPO_RELEASES_CHECKSUM_POLICY | Maven 存储库发布 checksum 策略。 | - | warn |
prefix_MAVEN_REPO_RELEASES_ENABLED | 启用 Maven 存储库发行版本。 | - | true |
prefix_MAVEN_REPO_RELEASES_UPDATE_POLICY | Maven 存储库发行版本更新策略。 | - | always |
prefix_MAVEN_REPO_SERVICE | Maven 存储库服务,以便在未指定 prefix_MAVEN_REPO_URL 中查找。 | - | 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 (已定义)。 | - | |
prefix_MAVEN_REPO_USERNAME | Maven 存储库用户名。 | - | mavenUser |
5.3.1. 使用默认值配置环境变量
以下配置环境变量指定了默认值,可以覆盖。
变量名称 | 描述 | Defaul 值 |
---|---|---|
AB_JOLOKIA_AUTH_OPENSHIFT |
切换到 OpenShift TLS 通信的客户端身份验证。此参数的值可以是相对可分辨名称,它必须包含在提供的客户端的证书中。启用此参数将自动将 Jolokia 切换到 HTTPS 通信模式。默认 CA 证书设置为 | true |
AB_JOLOKIA_HTTPS |
切换到与 HTTPS 的安全通信。默认情况下,如果在 AB_JOLOKIA_OPTS 中未提供 | true |
AB_JOLOKIA_PASSWORD_RANDOM |
确定是否应该生成随机 | true |
AB_PROMETHEUS_JMX_EXPORTER_CONFIG | 用于 Prometheus JMX 导出器的配置路径。 | /opt/jboss/container/prometheus/etc/jmx-exporter-config.yaml |
S2I_SOURCE_DEPLOYMENTS_FILTER | 复制部署时要应用的以空格分隔的过滤器列表。默认为 *。 | * |