The Distribution system YAML contains shared configurations, Distribution Operational microservices configurations, and router configuration.
Shared Configurations
## JFrog Distribution config file. ## To comment-out any field and keep correct yaml indentation simply delete the leading '#' character. configVersion: 1 ## NOTE: JFROG_HOME is a place holder for the actual root of the deployed product. ## You should replace JFROG_HOME with the real path! ## For example, in RPM install, JFROG_HOME=/opt/jfrog ## NOTE: Sensitive information like passwords and join key are encrypted on first read. ## NOTE: The provided commented key and value is the default. ## A shared section for keys across all services in this config shared: ## Java 11 distribution to use #javaHome: "JFROG_HOME/distribution/app/third-party/java" ## Base URL of the JFrog Platform Deployment (JPD) ## This is the URL to the machine where JFrog Artifactory is deployed, or the load balancer pointing to it. It is recommended to use DNS names rather than direct IPs. ## Examples: "http://jfrog.acme.com or http://10.20.30.40:8082" #jfrogUrl: ## Shared security configuration security: ## Join key value for joining the cluster (takes precedence over 'joinKeyFile') #joinKey: "" ## Join key file location #joinKeyFile: "JFROG_HOME/distribution/var/etc/security/join.key" ## Master key file location ## Generated by the product on first startup if not provided #masterKeyFile: "JFROG_HOME/distribution/var/etc/security/master.key" ## Maximum time to wait for key files (master.key and join.key) #bootstrapKeysReadTimeoutSecs: 120 ## Shared logging configuration logging: consoleLog: ## If true, all services' console logs will be redirected to a common console.log #enabled: true ## Log rotation settings rotation: ## The max file size at which enforce rotation #maxSizeMb: 25 ## The number of backup files to maintain #maxFiles: 10 ## Whether to compress the backup file #compress: true ## Shared node settings node: ## A unique id to identify this node. ## Default: auto generated at startup. #id: "distribution1" ## Default: auto resolved by startup script #ip: ## PostgreSQL database used by distribution database: #type: postgresql #driver: org.postgresql.Driver #url: jdbc:postgresql://localhost:5432/distribution #username: distribution #password: password ## Max connections to the database the main connection pool can consume #maxOpenConnections: 100 ## Max idle connections to keep in the connection pool #maxIdleConnections: 10 ## Redis server used by distribution services redis: #connectionString: "redis://localhost:6379" #username: #password: password #socketTimeoutMillis: 120000 #resourcePoolMaxSize: 200 #resourcePoolMaxWaitMillis: 60000 ## Add any custom environment variables to be passed to all the services ## Environment variables starting with JF_ are not allowed, will be ignored with a warning if it is added env: #EXAMPLE_VAR: example-value #LD_LIBRARY_PATH: /usr/lib64
Distribution Operational Microservices
## Distribution template distribution: #port: 8080 ## Extra Java options to pass to the JVM. These values add to or override the defaults. #extraJavaOpts: "-Xms3g -Xmx4g" ## Add any custom environment variables to be passed to this service ## Environment variables starting with JF_ are not allowed, will be ignored with a warning if it is added env: #EXAMPLE_VAR: example-value #LD_LIBRARY_PATH: /usr/lib64
Router
## Router template router: ## Profiling related settings profiling: ## Enable profiling endpoints #enabled: true ## Corporate proxy related settings proxy: ## Proxy url for all outgoing http requests #httpUrl: "" ## Proxy url for all outgoing https requests #httpsUrl: "" ## List of target hosts to communicate with directly, bypassing the proxy. ## "localhost" will always be added to this list automatically. #ignoredHosts: #- "ignore.me.com" #- "ignore.me2.com" ## Router entry points entrypoints: ## The internal port, used by local services to communicate with the router and any other service (local and external) #internalPort: 8046 ## The external port, registered in the service registry, used by external services to communicate with services in this node #externalPort: 8082 ## An internal port used for internal Traefik (and Router) REST API #traefikApiPort: 8049 ## An internal port used for Router's gRPC API #grpcPort: 8047 ## Service registry (Access) communication settings serviceRegistry: ## Service registry (Access) TLS verification skipped if enabled #insecure: false ## Service registry (Access) request timeout #requestTimeout: 15s ## Topology related settings topology: ## Local topology settings local: ## Settings for checking the health of local services healthCheck: ## Duration between health checks #interval: 5s ## Health check request timeout #requestTimeout: 5s ## The number of consecutive successful health checks that must occur before declaring an instance healthy #healthyThreshold: 2 ## The number of consecutive failed health checks that must occur before declaring an instance unhealthy #unhealthyThreshold: 2 ## External topology settings external: ## Settings for refreshing the router with external topology from the service registry refresh: ## Refresh interval #interval: 3s ## The maximum duration a service can be considered as healthy since its last heartbeat #maxStaleHeartbeat: 30s ## Support bundle aggregation settings supportBundle: ## The maximum duration support bundle aggregation is allowed before it is automatically cancelled #aggregationTimeout: 1h ## Logging settings logging: ## Router log settings application: ## The log level: error, warning, info, debug, trace #level: "info" ## The log format: jftext, json #format: "jftext" ## Whether to include the caller information (runtime frame) #caller: false ## Whether to print the log also to stdout #console: true ## Log rotation settings rotation: #compress: true #maxSizeMb: 25 #maxAgeDays: 0 #maxFiles: 10 ## Traefik log settings traefik: ## The log level: error, warning, info, debug, trace #level: "info" ## The log format: jftext, json #format: "jftext" ## Whether to include the caller information (runtime frame) #caller: false ## Whether to print the log also to stdout #console: true ## Log rotation settings rotation: #compress: true #maxSizeMb: 25 #maxAgeDays: 0 #maxFiles: 10 ## Request log settings request: ## If true, request log will contain additional information ## This may result in a slight performance overhead #verbose: false ## Log rotation settings rotation: #compress: true #maxSizeMb: 100 #maxAgeDays: 0 #maxFiles: 10 ## Add any custom environment variables to be passed to this service ## Environment variables starting with JF_ are not allowed, will be ignored with a warning if it is added env: #EXAMPLE_VAR: example-value #LD_LIBRARY_PATH: /usr/lib64