88## Chart Details
99This chart will do the following:
1010
11- * Deploy Artifactory-Oss
12- * Deploy Artifactory-Pro
11+ * Deploy Artifactory-Pro (or OSS if set custom image)
12+ * Deploy a PostgreSQL database
13+ * Deploy an Nginx server
1314
1415## Installing the Chart
1516
@@ -37,6 +38,31 @@ $ helm upgrade artifactory --namespace artifactory stable/artifactory
3738
3839This will apply any configuration changes on your existing deployment.
3940
41+ ### Artifactory memory and CPU resources
42+ The Artifactory Helm chart comes with support for configured resource requests and limits to Artifactory, Nginx and PostgreSQL. By default, these settings are commented out.
43+ It is ** highly** recommended to set these so you have full control of the allocated resources and limits.
44+ Artifactory java memory parameters can (and should) also be set to match the allocated resources with ` artifactory.javaOpts.xms ` and ` artifactory.javaOpts.xmx ` .
45+ ``` bash
46+ # Example of setting resource requests and limits to all pods (including passing java memory settings to Artifactory)
47+ $ helm install --name artifactory \
48+ --set artifactory.resources.requests.cpu=" 500m" \
49+ --set artifactory.resources.limits.cpu=" 2" \
50+ --set artifactory.resources.requests.memory=" 1Gi" \
51+ --set artifactory.resources.limits.memory=" 4Gi" \
52+ --set artifactory.javaOpts.xms=" 1g" \
53+ --set artifactory.javaOpts.xmx=" 4g" \
54+ --set database.resources.requests.cpu=" 200m" \
55+ --set database.resources.limits.cpu=" 1" \
56+ --set database.resources.requests.memory=" 500Mi" \
57+ --set database.resources.limits.memory=" 1Gi" \
58+ --set nginx.resources.requests.cpu=" 100m" \
59+ --set nginx.resources.limits.cpu=" 250m" \
60+ --set nginx.resources.requests.memory=" 250Mi" \
61+ --set nginx.resources.limits.memory=" 500Mi" \
62+ stable/artifactory
63+ ```
64+ Get more details on configuring Artifactory in the [ official documentation] ( https://www.jfrog.com/confluence/ ) .
65+
4066### Customizing Database password
4167You can override the specified database password (set in [ values.yaml] ( values.yaml ) ), by passing it as a parameter in the install command line
4268``` bash
@@ -49,22 +75,35 @@ You can customise other parameters in the same way, by passing them on `helm ins
4975``` bash
5076$ helm delete --purge artifactory
5177```
52-
5378This will completely delete your Artifactory Pro deployment.
5479** IMPORTANT:** This will also delete your data volumes. You will loose all data!
5580
81+
82+ ### Custom Docker registry for your images
83+ If you need to pull your Docker images from a private registry, you need to create a
84+ [ Kubernetes Docker registry secret] ( https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/ ) and pass it to helm
85+ ``` bash
86+ # Create a Docker registry secret called 'regsecret'
87+ $ kubectl create secret docker-registry regsecret --docker-server=< your-registry-server> --docker-username=< your-name> --docker-password=< your-pword> --docker-email=< your-email>
88+ ```
89+ Once created, you pass it to ` helm `
90+ ``` bash
91+ $ helm install --name artifactory --set imagePullSecrets=regsecret stable/artifactory
92+ ```
93+
5694## Configuration
5795
5896The following tables lists the configurable parameters of the artifactory chart and their default values.
5997
6098| Parameter | Description | Default |
6199| ---------------------------| -----------------------------------| ----------------------------------------------------------|
62- | ` database.name ` | Database name | ` postgresql ` |
63- | ` database.replicaCount ` | Database replica count | ` 1 ` |
64- | ` database.env.type ` | Database type | ` postgresql ` |
65- | ` database.env.name ` | Database name | ` artifactory ` |
66- | ` database.env.user ` | Database username | ` artifactory ` |
67- | ` database.env.pass ` | Database password | ` Randomly generated ` |
100+ | ` imagePullSecrets ` | Docker registry pull secret | |
101+ | ` database.name ` | Database name | ` postgresql ` |
102+ | ` database.replicaCount ` | Database replica count | ` 1 ` |
103+ | ` database.env.type ` | Database type | ` postgresql ` |
104+ | ` database.env.name ` | Database name | ` artifactory ` |
105+ | ` database.env.user ` | Database username | ` artifactory ` |
106+ | ` database.env.pass ` | Database password | ` Randomly generated ` |
68107| ` database.image.repository ` | Database container image | ` docker.bintray.io/postgres ` |
69108| ` database.image.version ` | Database container image tag | ` 9.5.2 ` |
70109| ` database.image.pullPolicy ` | Container pull policy | ` IfNotPresent ` |
@@ -74,25 +113,38 @@ The following tables lists the configurable parameters of the artifactory chart
74113| ` database.persistence.mountPath ` | Database persistence volume mount path | ` "/var/lib/postgresql/data" ` |
75114| ` database.persistence.enabled ` | Database persistence volume enabled | ` true ` |
76115| ` database.persistence.accessMode ` | Database persistence volume access mode | ` ReadWriteOnce ` |
77- | ` database.persistence.size ` | Database persistence volume size | ` 10Gi ` |
116+ | ` database.persistence.size ` | Database persistence volume size | ` 10Gi ` |
117+ | ` database.resources.requests.memory ` | Database initial memory request | |
118+ | ` database.resources.requests.cpu ` | Database initial cpu request | |
119+ | ` database.resources.limits.memory ` | Database memory limit | |
120+ | ` database.resources.limits.cpu ` | Database cpu limit | |
78121| ` artifactory.name ` | Artifactory name | ` artifactory ` |
79122| ` artifactory.replicaCount ` | Replica count for Artifactory deployment| ` 1 ` |
80123| ` artifactory.image.pullPolicy ` | Container pull policy | ` IfNotPresent ` |
81124| ` artifactory.image.repository ` | Container image | ` docker.bintray.io/jfrog/artifactory-pro ` |
82- | ` artifactory.image.version ` | Container image tag | ` 5.6.2 ` |
125+ | ` artifactory.image.version ` | Container image tag | ` 5.6.3 ` |
126+ | ` artifactory.service.name ` | Artifactory service name to be set in Nginx configuration | ` artifactory ` |
83127| ` artifactory.service.type ` | Artifactory service type | ` ClusterIP ` |
84128| ` artifactory.externalPort ` | Artifactory service external port | ` 8081 ` |
85129| ` artifactory.internalPort ` | Artifactory service internal port | ` 8081 ` |
86130| ` artifactory.persistence.mountPath ` | Artifactory persistence volume mount path | ` "/var/opt/jfrog/artifactory" ` |
87131| ` artifactory.persistence.enabled ` | Artifactory persistence volume enabled | ` true ` |
88132| ` artifactory.persistence.accessMode ` | Artifactory persistence volume access mode | ` ReadWriteOnce ` |
89133| ` artifactory.persistence.size ` | Artifactory persistence volume size | ` 20Gi ` |
134+ | ` artifactory.resources.requests.memory ` | Artifactory initial memory request | |
135+ | ` artifactory.resources.requests.cpu ` | Artifactory initial cpu request | |
136+ | ` artifactory.resources.limits.memory ` | Artifactory memory limit | |
137+ | ` artifactory.resources.limits.cpu ` | Artifactory cpu limit | |
138+ | ` artifactory.javaOpts.xms ` | Artifactory java Xms size | |
139+ | ` artifactory.javaOpts.xmx ` | Artifactory java Xms size | |
140+ | ` artifactory.javaOpts.other ` | Artifactory additional java options | |
90141| ` nginx.name ` | Nginx name | ` nginx ` |
91142| ` nginx.replicaCount ` | Nginx replica count | ` 1 ` |
92143| ` nginx.image.repository ` | Container image | ` docker.bintray.io/jfrog/nginx-artifactory-pro ` |
93144| ` nginx.image.pullPolicy ` | Container pull policy | ` IfNotPresent ` |
94- | ` nginx.image.version ` | Container image tag | ` 5.6.2 ` |
145+ | ` nginx.image.version ` | Container image tag | ` 5.6.3 ` |
95146| ` nginx.service.type ` | Nginx service type | ` LoadBalancer ` |
147+ | ` nginx.service.loadBalancerSourceRanges ` | Nginx service array of IP CIDR ranges to whitelist (only when service type is LoadBalancer) | |
96148| ` nginx.externalPortHttp ` | Nginx service external port | ` 80 ` |
97149| ` nginx.internalPortHttp ` | Nginx service internal port | ` 80 ` |
98150| ` nginx.externalPortHttps ` | Nginx service external port | ` 443 ` |
@@ -103,6 +155,10 @@ The following tables lists the configurable parameters of the artifactory chart
103155| ` nginx.persistence.enabled ` | Nginx persistence volume enabled | ` true ` |
104156| ` nginx.persistence.accessMode ` | Nginx persistence volume access mode | ` ReadWriteOnce ` |
105157| ` nginx.persistence.size ` | Nginx persistence volume size | ` 5Gi ` |
158+ | ` nginx.resources.requests.memory ` | Nginx initial memory request | |
159+ | ` nginx.resources.requests.cpu ` | Nginx initial cpu request | |
160+ | ` nginx.resources.limits.memory ` | Nginx memory limit | |
161+ | ` nginx.resources.limits.cpu ` | Nginx cpu limit | |
106162
107163Specify each parameter using the ` --set key=value[,key=value] ` argument to ` helm install ` .
108164
0 commit comments