Changes for page XWiki (Helm)
Last modified by Itzhak Daniel on 2024/04/29 16:35
From version 22.1
edited by Itzhak Daniel
on 2024/04/29 16:35
on 2024/04/29 16:35
Change comment:
There is no comment for this version
To version 19.1
edited by Itzhak Daniel
on 2024/04/29 01:43
on 2024/04/29 01:43
Change comment:
Uploaded new attachment "Dockerfile", version 1.2
Summary
-
Page properties (1 modified, 0 added, 0 removed)
-
Attachments (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -49,7 +49,7 @@ 49 49 git clone --depth 1 --branch master https://github.com/xwiki/xwiki-docker.git 50 50 {{/code}} 51 51 52 -Once you have the repo locally, modify the [[//Dockerfile//>>attach:Dockerfile]]as shown below:52 +Once you have the repo locally, modify the //Dockerfile// as shown below: 53 53 54 54 {{code language="git" title="# Diff"}} 55 55 @@ -89,6 +89,11 @@ COPY xwiki/docker-entrypoint.sh /usr/local/bin/docker-entrypoint.sh ... ... @@ -71,15 +71,15 @@ 71 71 72 72 {{code language="sh" layout="LINENUMBERS" title="# Docker"}} 73 73 cd ./16/mysql-tomcat/ 74 -docker build -t behemothil/xwiki-mysql-tomcat-nonroot:16.2.0- 3.74 +docker build -t behemothil/xwiki-mysql-tomcat-nonroot:16.2.0-2 . 75 75 docker login 76 -docker push behemothil/xwiki-mysql-tomcat-nonroot:16.2.0- 376 +docker push behemothil/xwiki-mysql-tomcat-nonroot:16.2.0-2 77 77 {{/code}} 78 78 79 79 {{code language="sh" layout="LINENUMBERS" title="# Podman"}} 80 80 cd ./16/mysql-tomcat/ 81 -buildah build -f Dockerfile -t behemothil/xwiki-mysql-tomcat-nonroot:16.2.0- 382 - podmanpush --creds=[Username:[Password]] behemothil/xwiki-mysql-tomcat-nonroot:16.2.0-381 +buildah build -f Dockerfile -t behemothil/xwiki-mysql-tomcat-nonroot:16.2.0-2 82 +docker push --creds=[Username:[Password]] behemothil/xwiki-mysql-tomcat-nonroot:16.2.0-2 83 83 {{/code}} 84 84 85 85 === Deploy === ... ... @@ -86,7 +86,7 @@ 86 86 87 87 We're going to deploy XWiki as a [[statefulset>>https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/]] using [[Helm>>https://helm.sh/]], the Database (MySQL) and the App, each will have a volume to store their information. As I mentioned, in our case, we need to perform several additional steps. 88 88 89 -After the path/loop devices were created, create the [[PVs>>attach:pv_storage.yaml]](only if your cluster doesn't know how to provision storage for itself):89 +After the path/loop devices were created, create the PVs (only if your cluster doesn't know how to provision storage for itself): 90 90 91 91 {{code language="sh" layout="LINENUMBERS" title="# kubectl stdin"}} 92 92 kubectl create -f - <<EOF ... ... @@ -181,15 +181,15 @@ 181 181 Theoretically, if there aren't any breaking changes or prerequisites, you can run: 182 182 183 183 {{code language="sh" layout="LINENUMBERS" title="# Helm upgrade"}} 184 -helm repo update xwiki-helm 185 185 helm upgrade --namespace behemoth-wiki \ 186 186 --values values.yaml \ 187 187 behemoth-xwiki xwiki-helm/xwiki 187 + 188 188 {{/code}} 189 189 190 190 === Uninstall === 191 191 192 -To fully remove XWiki from your cluster, use the following commands:192 +To fully remove XWiki, use the following commands: 193 193 194 194 {{code language="sh" layout="LINENUMBERS" title="# Uninstalling"}} 195 195 helm uninstall --namespace behemoth-wiki behemoth-xwiki
- values.yaml
-
- Size
-
... ... @@ -1,1 +1,1 @@ 1 - 5.5KB1 +4.1 KB - Content
-
... ... @@ -1,6 +4,3 @@ 1 -# Default values for node. 2 -# This is a YAML-formatted file. 3 -# Declare variables to be passed into your templates. 4 4 cluster: 5 5 enabled: false 6 6 ... ... @@ -7,11 +7,8 @@ 7 7 image: 8 8 name: xwiki 9 9 pullPolicy: IfNotPresent 10 -## Image Tag useful when externalDB is been used 11 -## https://hub.docker.com/_/xwiki 12 12 name: "behemothil/xwiki-mysql-tomcat-nonroot" 13 - tag: "16.2.0-2" 14 -# tag: '16.2.0-mysql-tomcat' 8 + tag: "16.2.0-1" 15 15 service: 16 16 portName: node 17 17 name: http ... ... @@ -18,11 +18,7 @@ 18 18 type: ClusterIP 19 19 externalPort: 80 20 20 internalPort: 8080 21 - # Set an array of externalIPs for the service 22 22 externalIPs: [] 23 - # - 10.20.30.40 24 - # - 10.20.30.41 25 - # Reference: https://kubernetes.io/docs/reference/networking/virtual-ips/#session-affinity 26 26 sessionAffinity: ClientIP 27 27 resources: 28 28 limits: ... ... @@ -36,7 +36,6 @@ 36 36 - -Xms1024m 37 37 - -Xmx6000m 38 38 39 -# Enable to choose witch kind of workload will be used: (true) StatefulSet or (false) for Deployment 40 40 workloadStateful: true 41 41 42 42 securityContext: ... ... @@ -65,36 +65,20 @@ 65 65 type: "RuntimeDefault" 66 66 enabled: true 67 67 68 -## 69 -## MySql chart configuration 70 -## 71 -## https://github.com/bitnami/charts/tree/main/bitnami/mysql 72 -## 73 73 mysql: 74 - ## Whether to deploy a mysql server. Set false for a different database. 75 75 enabled: true 76 76 image: 77 77 tag: "8.0-debian-12" 78 78 pullPolicy: "IfNotPresent" 79 79 auth: 80 - rootPassword: "W xv11dZmzw4YIozxj1"81 - username: " xwiki"82 - password: " 3N5NBYnb5VQfDA2gde"83 - database: " xwiki"63 + rootPassword: "ROOT_PASSWORD_CHANGEME !!!" 64 + username: "USERNAME_CHANGEME !!!" 65 + password: "USER_PASSWORD_CHANGEME !!!" 66 + database: "DB_NAME_CHANGEME !!!" 84 84 initdbScripts: 85 85 00-init.sql: | 86 86 grant all privileges on *.* to xwiki@'%' 87 87 primary: 88 - # initContainers: 89 - # - name: "fix-non-root-permissions" 90 - # image: "busybox" 91 - # imagePullPolicy: "IfNotPresent" 92 - # command: [ "chown", "-R", "30001:30001", "/opt/bitnami" ] 93 - # volumeMounts: 94 - # - name: conf 95 - # mountPath: /opt/bitnami 96 - # Changed to use UTF8mb4, check future versions if this was already changed. 97 - # TODO: review explicit_defaults_for_timestamp 98 98 configuration: |- 99 99 [mysqld] 100 100 default_authentication_plugin=mysql_native_password ... ... @@ -145,25 +145,12 @@ 145 145 seccompProfile: 146 146 type: "RuntimeDefault" 147 147 148 -mariadb: 149 - enabled: false 150 - 151 -postgresql: 152 - enabled: false 153 - 154 -solr: 155 - enabled: false 156 - 157 -# To use ingress for routing set ingress.enabled value to true and istio.enabled value to false 158 158 ingress: 159 159 enabled: true 160 160 className: nginx 161 161 annotations: 162 162 kubernetes.io/ingress.class: nginx 163 -# nginx.ingress.kubernetes.io/whitelist-source-range: "152.67.64.124/32, 178.255.149.139/32" 164 164 cert-manager.io/cluster-issuer: letsencrypt-prod 165 - # kubernetes.io/tls-acme: "true" 166 - # ingress.kubernetes.io/rewrite-target: / 167 167 hosts: 168 168 - host: wiki.behemoth.co.il 169 169 paths: ... ... @@ -174,9 +174,6 @@ 174 174 hosts: 175 175 - wiki.behemoth.co.il 176 176 177 -istio: 178 - enabled: false 179 - 180 180 persistence: 181 181 enabled: true 182 182 storageClass: "behemoth-xwiki-www" ... ... @@ -184,19 +184,6 @@ 184 184 - ReadWriteOnce 185 185 size: "5Gi" 186 186 187 -podDisruptionBudget: 188 - enabled: false 189 - 190 -glowroot: 191 - enabled: false 192 - 193 -logback: 194 - enabled: false 195 - 196 -autoscaling: 197 - enabled: false 198 - 199 -# Ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/ 200 200 probes: 201 201 startup: 202 202 enabled: true ... ... @@ -216,7 +216,6 @@ 216 216 initialDelaySeconds: 30 217 217 timeoutSeconds: 3 218 218 periodSeconds: 30 219 - # 5 minutes 220 220 failureThreshold: 10 221 221 successThreshold: 1 222 222 readiness: ... ... @@ -227,13 +227,9 @@ 227 227 initialDelaySeconds: 30 228 228 timeoutSeconds: 3 229 229 periodSeconds: 30 230 - # 5 minutes 231 231 failureThreshold: 10 232 232 successThreshold: 1 233 233 234 -infinispan: 235 - enabled: false 236 - 237 237 prometheus: 238 238 javaagent: 239 239 # https://github.com/prometheus/jmx_exporter ... ... @@ -240,3 +240,23 @@ 240 240 # Enable to download and use this agent 241 241 enabled: true 242 242 182 +podDisruptionBudget: 183 + enabled: false 184 + 185 +solr: 186 + enabled: false 187 +istio: 188 + enabled: false 189 + 190 +glowroot: 191 + enabled: false 192 + 193 +logback: 194 + enabled: false 195 + 196 +autoscaling: 197 + enabled: false 198 + 199 +infinispan: 200 + enabled: false 201 +