name: "jboss-datagrid-7/datagrid71-openshift" description: "Red Hat JBoss Data Grid 7.1 for OpenShift container image" version: "1.0" from: "jboss-datagrid-7/datagrid71:latest" user: 185 labels: - name: "io.k8s.description" value: "Provides a scalable in-memory distributed database designed for fast access to large volumes of data." - name: "io.k8s.display-name" value: "JBoss Data Grid 7.1" - name: "io.openshift.expose-services" value: "8080:http" - name: "io.openshift.tags" value: "datagrid,java,jboss,xpaas" - name: "io.openshift.s2i.scripts-url" value: "image:///usr/local/s2i" envs: - name: "JBOSS_MODULES_SYSTEM_PKGS" value: "org.jboss.logmanager,jdk.nashorn.api" - name: "AB_JOLOKIA_PASSWORD_RANDOM" value: "true" - name: AB_JOLOKIA_AUTH_OPENSHIFT value: "true" - name: AB_JOLOKIA_HTTPS value: "true" - name: "OPENSHIFT_KUBE_PING_NAMESPACE" example: "myproject" description: "Clustering project namespace." - name: "OPENSHIFT_KUBE_PING_LABELS" example: "application=eap-app" description: "Clustering labels selector." - name: "JAVA_OPTS_APPEND" example: "-Dfoo=bar" - name: "JGROUPS_CLUSTER_PASSWORD" example: "miR0JaDR" description: "A password to control access to the JGroup. Needs to be set consistently cluster-wide. The image default is to use the `OPENSHIFT_KUBE_PING_LABELS` variable value, however the JBoss application templates generate and supply a random value." - name: CACHE_NAMES description: "List of caches to configure. Defaults to default,memcached" example: "addressbook,addressbook_indexed" - name: DEFAULT_CACHE description: "Indicates the default cache for this cache container." example: "addressbook" - name: CACHE_CONTAINER_START description: "Should this cache container be started on server startup, or lazily when requested by a service or deployment. Defaults to LAZY" example: "EAGER" - name: CACHE_CONTAINER_STATISTICS description: "Determines whether or not the cache container should collect statistics. Disable for optimal performance. Default is true" example: "false" - name: TRANSPORT_LOCK_TIMEOUT description: "Infinispan uses a distributed lock to maintain a coherent transaction log during state transfer or rehashing, which means that only one cache can be doing state transfer or rehashing at the same time. This constraint is in place because more than one cache could be involved in a transaction. This timeout controls the time to wait to acquire a distributed lock. Defaults to 240000" example: "120000" - name: "CACHE_EXPIRATION_LIFESPAN" description: "Maximum lifespan, in milliseconds, of a cache entry, after which the entry is expired cluster-wide." example: "10000" - name: "CACHE_EXPIRATION_MAX_IDLE" description: "Maximum idle time, in milliseconds, a cache entry will be maintained in the cache. If the idle time is exceeded, then the entry will be expired cluster-wide. " example: "10000" - name: "CACHE_EXPIRATION_INTERVAL" description: "Interval, in milliseconds, between subsequent runs to purge expired entries from memory and any cache stores. " example: "5000" - name: CONTAINER_SECURITY_IDENTITY_ROLE_MAPPER description: "Set a role mapper for this cache container. Valid values are: identity-role-mapper,common-name-role-mapper,cluster-role-mapper,custom-role-mapper" example: "identity-role-mapper" - name: CONTAINER_SECURITY_CUSTOM_ROLE_MAPPER_CLASS description: "Class of the custom principal to role mapper" example: "com.acme.CustomRoleMapper" - name: CONTAINER_SECURITY_ROLES description: "Defines role names and assigns permissions to them." example: "admin=ALL,reader=READ,writer=WRITE" - name: INFINISPAN_CONNECTORS description: "Comma separated list of connectors to configure. Defaults to hotrod,memcached,rest. Beware, if you enable authorization or authentication on your cache you should remove memcached as the protocol is insecure." example: "hotrod" - name: HOTROD_SERVICE_NAME description: "Name of the OpenShift service used to expose HotRod externally." example: "DATAGRID_APP_HOTROD" - name: HOTROD_AUTHENTICATION description: "If defined the hotrod-connectors will be configured with authentication in the ApplicationRealm." example: "true" - name: HOTROD_ENCRYPTION description: "If defined the hotrod-connectors will be configured with encryption in the ApplicationRealm." example: "true" - name: ENCRYPTION_REQUIRE_SSL_CLIENT_AUTH description: "Whether to require client certificate authentication. Defaults to false." example: "true" - name: MEMCACHED_CACHE description: "The name of the cache to use for the Memcached connector." example: "memcached" - name: REST_SECURITY_DOMAIN description: "The security domain to use for authentication/authorization purposes. Defaults to none (no authentication)" example: "other" - name: "USERNAME" example: "openshift" description: "Username for JDG user" - name: "PASSWORD" example: "p@ssw0rd" description: "The password to access the JDG Caches. Must be different than username; must not be root, admin, or administrator; must contain at least 8 characters, 1 alphabetic character(s), 1 digit(s), and 1 non-alphanumeric symbol(s). (optional)" - name: AB_JOLOKIA_OFF description: If set disables activation of Joloka (i.e. echos an empty value). By default, Jolokia is enabled. example: "true" - name: AB_JOLOKIA_CONFIG description: If set uses this file (including path) as Jolokia JVM agent properties (as described in Jolokia's link:https://www.jolokia.org/reference/html/agents.html#agents-jvm[reference manual]). If not set, the `/opt/jolokia/etc/jolokia.properties` will be created using the settings as defined in the manual. Otherwise the rest of the settings in this document are ignored. example: "/opt/jolokia/custom.properties" - name: AB_JOLOKIA_HOST description: Host address to bind to. Defaults to **0.0.0.0**. example: "127.0.0.1" - name: AB_JOLOKIA_PORT description: Port to listen to. Defaults to **8778**. example: "5432" - name: AB_JOLOKIA_USER description: User for basic authentication. Defaults to **jolokia**. example: "myusername" - name: AB_JOLOKIA_PASSWORD description: Password for basic authentication. By default authentication is switched off. example: "mypassword" - name: AB_JOLOKIA_PASSWORD_RANDOM description: Determines if a random AB_JOLOKIA_PASSWORD be generated. Set to **true** to generate random password. Generated value will be written to `/opt/jolokia/etc/jolokia.pw`. example: "true" - name: AB_JOLOKIA_HTTPS description: Switch on secure communication with https. By default self signed server certificates are generated if no `serverCert` configuration is given in **AB_JOLOKIA_OPTS**. example: "true" - name: AB_JOLOKIA_ID description: Agent ID to use (`$HOSTNAME` by default, which is the container id). example: "openjdk-app-1-xqlsj" - name: AB_JOLOKIA_DISCOVERY_ENABLED description: Enable Jolokia discovery. Defaults to **false**. example: "true" - name: AB_JOLOKIA_OPTS description: Additional options to be appended to the agent configuration. They should be given in the format `key=value,key=value,...`. example: "backlog=20" - name: AB_JOLOKIA_AUTH_OPENSHIFT description: Switch on client authentication for OpenShift TLS communication. The value of this parameter can be a relative distinguished name which must be contained in a presented client's certificate. Enabling this parameter will automatically switch Jolokia into https communication mode. The default CA cert is set to `/var/run/secrets/kubernetes.io/serviceaccount/ca.crt`. example: "true" - name: SCRIPT_DEBUG description: If set to true, ensurses that the bash scripts are executed with the -x option, printing the commands and their arguments as they are executed. example: "true" - name: JAVA_MAX_MEM_RATIO description: This is used to calculate a default maximal heap memory based on a containers restriction. If used in a Docker container without any memory constraints for the container then this option has no effect. If there is a memory constraint then `-Xmx` is set to a ratio of the container available memory as set here. The default is `50` which means 50% of the available memory is used as an upper boundary. You can skip this mechanism by setting this value to `0` in which case no `-Xmx` option is added. example: "50" - name: JAVA_INITIAL_MEM_RATIO description: This is used to calculate a default initial heap memory based the maximumal heap memory. The default is `100` which means 100% of the maximal heap is used for the initial heap size. You can skip this mechanism by setting this value to `0` in which case no `-Xms` option is added. example: "100" - name: JAVA_MAX_INITIAL_MEM description: The maximum size of the initial heap memory, if the calculated default initial heap is larger then it will be capped at this value. The default is 4096 MB. example: "4096" - name: JAVA_DIAGNOSTICS description: Set this to get some diagnostics information to standard output when things are happening. **Disabled by default.** example: "true" - name: GC_MIN_HEAP_FREE_RATIO description: Minimum percentage of heap free after GC to avoid expansion. example: "20" - name: GC_MAX_HEAP_FREE_RATIO description: Maximum percentage of heap free after GC to avoid shrinking. example: "40" - name: GC_TIME_RATIO description: Specifies the ratio of the time spent outside the garbage collection (for example, the time spent for application execution) to the time spent in the garbage collection. example: "4" - name: GC_ADAPTIVE_SIZE_POLICY_WEIGHT description: The weighting given to the current GC time versus previous GC times. example: "90" - name: GC_MAX_METASPACE_SIZE description: The maximum metaspace size. example: "100" - name: "CONTAINER_HEAP_PERCENT" example: 0.5 description: Deprecated. See JAVA_MAX_MEM_RATIO. - name: "INITIAL_HEAP_PERCENT" example: 0.5 description: Deprecated. See JAVA_INITIAL_MEM_RATIO. - name: "PROBE_DISABLE_BOOT_ERRORS_CHECK" example: "true" description: Disable the boot errors check in the probes. ports: - value: 8443 - value: 8778 - value: 11211 - value: 11222 - value: 11333 cmd: - "/opt/datagrid/bin/openshift-launch.sh" packages: - rh-mongodb32-mongo-java-driver - postgresql-jdbc - mysql-connector-java - rh-maven33 - hostname - python-requests - python-enum34 - coreutils - PyYAML sources: - artifact: https://maven.repository.redhat.com/ga/org/jolokia/jolokia-jvm/1.3.6.redhat-1/jolokia-jvm-1.3.6.redhat-1-agent.jar md5: 75e5b5ba0b804cd9def9f20a70af649f - artifact: javax.json-1.0.4.jar md5: 569870f975deeeb6691fcb9bc02a9555 - artifact: jboss-logmanager-ext-1.0.0.Alpha2-redhat-1.jar md5: 7c743e35463db5f55f415dd666d705c5 - artifact: openshift-ping-common-1.1.5.Final-redhat-1.jar md5: e27cdcf626ab1366c8d7d18ebd399ec4 - artifact: openshift-ping-dns-1.1.5.Final-redhat-1.jar md5: ecab0d5ad969cb001e778305485b4640 - artifact: openshift-ping-kube-1.1.5.Final-redhat-1.jar md5: 2f74acc3efc68e3781b7004f5a683fdc - artifact: oauth-20100527.jar md5: 91c7c70579f95b7ddee95b2143a49b41 - artifact: tomcat-7-valves-1.0.3.Final-redhat-1.jar md5: f286f6748e6d134ed0a9dadd8320ecd2 cct: - name: JDG modules: - url: https://github.com/jboss-openshift/cct_module version: "1.0" changes: - cct_module.dynamic-resources: - install_sh: - cct_module.s2i-common: - install_sh: - cct_module.java-alternatives: - run_sh: - cct_module.os-eap7-openshift: - prepare_sh: - cct_module.os-eap-s2i: - prepare_sh: - cct_module.os-java-jolokia: - install_as_root: - cct_module.jolokia: - user: 185 - configure_sh: - cct_module.os-eap7-openshift: - user: 185 - configure_sh: - cct_module.os-eap7-modules: - user: 185 - configure_sh: - cct_module.os-eap7-ping: - user: 185 - configure_sh: - cct_module.os-eap-launch: - user: 185 - configure_sh: - cct_module.os-eap7-launch: - user: 185 - configure_sh: - cct_module.os-eap-logging: - user: 185 - configure_sh: - cct_module.os-eap-probes: - user: 185 - configure_sh: - cct_module.jboss-maven: - user: 185 - configure_sh: - cct_module.os-eap-db-drivers: - user: 185 - configure_sh: - cct_module.datagrid7-openshift: - user: 185 - configure_sh: - cct_module.os-jdg7-conffiles: - user: 185 - configure_sh: - cct_module.os-java-run: - install_as_root: - cct_module.os-jdg7-launch: - user: 185 - configure_sh: - cct_module.os-eap-extensions: - user: 185 - configure_sh: - cct_module.openshift-layer: - user: 185 - configure_layers_sh: - cct_module.openshift-layer: - configure_passwd_sh: dogen: version: 2.4.1 plugins: cct: verbose: true plugins: dist_git: repo: jboss-datagrid-7-docker branch: ce-1.0-openshift-datagrid-7.1-jdk-8-rhel-7