fix: update geoserver

This commit is contained in:
Jonas Juselius
2024-02-01 10:14:32 +01:00
parent 9b9e6f2ee2
commit efdec26433
12 changed files with 628 additions and 1 deletions
+1 -1
View File
@@ -22,7 +22,7 @@ spec:
server: https://kubernetes.default.svc
namespace: geoserver
sources:
- repoURL: https://gitlab.com/oceanbox/charts.git
- repoURL: https://gitlab.com/oceanbox/manifests.git
targetRevision: HEAD
path: geoserver
plugin:
+210
View File
@@ -0,0 +1,210 @@
---
# Source: geoserver/templates/serviceaccount.yaml
apiVersion: v1
kind: ServiceAccount
metadata:
name: geoserver
labels:
helm.sh/chart: geoserver-1.1.0
app.kubernetes.io/name: geoserver
app.kubernetes.io/instance: staging
app.kubernetes.io/version: "2.23.1"
app.kubernetes.io/managed-by: Helm
---
# Source: geoserver/templates/secrets.yaml
apiVersion: v1
kind: Secret
metadata:
name: geoserver
labels:
helm.sh/chart: geoserver-1.1.0
app.kubernetes.io/name: geoserver
app.kubernetes.io/instance: staging
app.kubernetes.io/version: "2.23.1"
app.kubernetes.io/managed-by: Helm
data:
geoserver_admin_password: "Z2Vvc2VydmVy"
---
# Source: geoserver/templates/persistence.yaml
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: geoserver
labels:
helm.sh/chart: geoserver-1.1.0
app.kubernetes.io/name: geoserver
app.kubernetes.io/instance: staging
app.kubernetes.io/version: "2.23.1"
app.kubernetes.io/managed-by: Helm
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: "10Gi"
---
# Source: geoserver/templates/service.yaml
apiVersion: v1
kind: Service
metadata:
name: geoserver
labels:
helm.sh/chart: geoserver-1.1.0
app.kubernetes.io/name: geoserver
app.kubernetes.io/instance: staging
app.kubernetes.io/version: "2.23.1"
app.kubernetes.io/managed-by: Helm
spec:
type: ClusterIP
ports:
- port: 8080
targetPort: geoserver
protocol: TCP
name: geoserver
selector:
app.kubernetes.io/name: geoserver
app.kubernetes.io/instance: staging
---
# Source: geoserver/templates/deployment.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
name: geoserver
labels:
helm.sh/chart: geoserver-1.1.0
app.kubernetes.io/name: geoserver
app.kubernetes.io/instance: staging
app.kubernetes.io/version: "2.23.1"
app.kubernetes.io/managed-by: Helm
spec:
replicas: 1
selector:
matchLabels:
app.kubernetes.io/name: geoserver
app.kubernetes.io/instance: staging
strategy:
type: RollingUpdate
template:
metadata:
labels:
app.kubernetes.io/name: geoserver
app.kubernetes.io/instance: staging
spec:
serviceAccountName: geoserver
securityContext:
fsGroup: 2000
containers:
- name: geoserver
securityContext:
allowPrivilegeEscalation: true
capabilities:
drop:
- ALL
readOnlyRootFilesystem: false
runAsNonRoot: false
runAsUser: 0
seccompProfile:
type: RuntimeDefault
image: "docker.osgeo.org/geoserver:2.23.1"
imagePullPolicy: IfNotPresent
env:
- name: INSTALL_EXTENSIONS
value: "false"
- name: STABLE_EXTENSIONS
value: ""
- name: CORS_ENABLED
value: "true"
- name: GEOSERVER_CSRF_WHITELIST
value: "geoserver.beta.oceanbox.io"
- name: SKIP_DEMO_DATA
value: "true"
- name: EXTRA_JAVA_OPTS
value: "-Xms512m -Xmx2g"
- name: GEOSERVER_ADMIN_USER
value: admin
- name: GEOSERVER_ADMIN_PASSWORD
valueFrom:
secretKeyRef:
name: geoserver
key: geoserver_admin_password
ports:
- name: geoserver
containerPort: 8080
protocol: TCP
volumeMounts:
- name: geoserver
mountPath: /opt/geoserver_data
startupProbe:
httpGet:
path: /geoserver/web
port: geoserver
failureThreshold: 10
periodSeconds: 30
livenessProbe:
httpGet:
path: /geoserver/web
port: geoserver
readinessProbe:
httpGet:
path: /geoserver/web
port: geoserver
resources:
{}
volumes:
- name: geoserver
persistentVolumeClaim:
claimName: geoserver
---
# Source: geoserver/templates/ingress.yaml
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: geoserver
labels:
helm.sh/chart: geoserver-1.1.0
app.kubernetes.io/name: geoserver
app.kubernetes.io/instance: staging
app.kubernetes.io/version: "2.23.1"
app.kubernetes.io/managed-by: Helm
annotations:
cert-manager.io/cluster-issuer: letsencrypt-staging
nginx.ingress.kubernetes.io/backend-protocol: HTTP
nginx.ingress.kubernetes.io/ssl-redirect: "true"
nginx.ingress.kubernetes.io/whitelist-source-range: 10.0.0.0/8,172.16.0.0/12,192.168.0.0/16
spec:
tls:
- hosts:
- "geoserver.beta.oceanbox.io"
secretName: staging-geoserver-tls
rules:
- host: "geoserver.beta.oceanbox.io"
http:
paths:
- path: /geoserver/
pathType: ImplementationSpecific
backend:
service:
name: geoserver
port:
number: 8080
---
# Source: geoserver/templates/tests/test-connection.yaml
apiVersion: v1
kind: Pod
metadata:
name: "geoserver-test-connection"
labels:
helm.sh/chart: geoserver-1.1.0
app.kubernetes.io/name: geoserver
app.kubernetes.io/instance: staging
app.kubernetes.io/version: "2.23.1"
app.kubernetes.io/managed-by: Helm
annotations:
"helm.sh/hook": test
spec:
containers:
- name: wget
image: busybox
command: ['wget']
args: ['geoserver:8080']
restartPolicy: Never
+9
View File
@@ -0,0 +1,9 @@
- op: replace
path: /spec/rules/0/http/paths/0/path
value: /geoserver/ows
- op: add
path: /spec/ingressClassName
value: nginx
+9
View File
@@ -0,0 +1,9 @@
patches:
- target:
group: networking.k8s.io
version: v1
kind: Ingress
name: geoserver
path: ingress_patch.yaml
resources:
- _manifest.yaml
+1
View File
@@ -0,0 +1 @@
ncsa/geoserver
+111
View File
@@ -0,0 +1,111 @@
# Default values for geoserver.
# This is a YAML-formatted file.
# Declare variables to be passed into your templates.
image:
repository: docker.osgeo.org/geoserver
pullPolicy: IfNotPresent
# Overrides the image tag whose default is the chart appVersion.
tag: ""
auth:
username: admin
password: geoserver
# use an existing secret if specified
#existingSecret: geoserver-admin-password
#passwordKey: geoserver-admin-password
cors:
enabled: true
extension:
install: false
stableExtension: ""
demoData:
skip: true
startup:
failureThreshold: 10
periodSeconds: 30
imagePullSecrets: []
nameOverride: ""
fullnameOverride: "geoserver"
persistence:
size: 10Gi
accessModes: ReadWriteOnce
#existingClaim: someclaim
# the white list is needed for GUI working properly.
# the value for this should be the main URL for where geoserver get deployed.
# the values should be only url without http:// or https://, like "geoserver.example.com"
whitelist: "geoserver.srv.oceanbox.io"
# the following is for the geoserver java memory heap size control
envs:
extraJavaOpts: "-Xms512m -Xmx2g"
serviceAccount:
# Specifies whether a service account should be created
create: true
# Annotations to add to the service account
annotations: {}
# The name of the service account to use.
# If not set and create is true, a name is generated using the fullname template
name: ""
podAnnotations: {}
podSecurityContext:
fsGroup: 2000
securityContext:
capabilities:
drop:
- ALL
readOnlyRootFilesystem: false
allowPrivilegeEscalation: true
seccompProfile:
type: RuntimeDefault
runAsNonRoot: false
runAsUser: 0
service:
type: ClusterIP
port: 8080
ingress:
enabled: true
annotations:
cert-manager.io/cluster-issuer: letsencrypt-staging
nginx.ingress.kubernetes.io/backend-protocol: HTTP
nginx.ingress.kubernetes.io/ssl-redirect: "true"
# nginx.ingress.kubernetes.io/whitelist-source-range: 10.0.0.0/8,172.16.0.0/12,192.168.0.0/16
hosts:
- host: geoserver.srv.oceanbox.io
tls:
- secretName: prod-geoserver-tls
hosts:
- geoserver.srv.oceanbox.io
resources: {}
# We usually recommend not to specify default resources and to leave this as a conscious
# choice for the user. This also increases chances charts run on environments with little
# resources, such as Minikube. If you do want to specify resources, uncomment the following
# lines, adjust them as necessary, and remove the curly braces after 'resources:'.
# limits:
# cpu: 100m
# memory: 128Mi
# requests:
# cpu: 100m
# memory: 128Mi
nodeSelector: {}
tolerations: []
affinity: {}
+31
View File
@@ -0,0 +1,31 @@
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
annotations:
cert-manager.io/cluster-issuer: letsencrypt-staging
nginx.ingress.kubernetes.io/backend-protocol: HTTP
nginx.ingress.kubernetes.io/ssl-redirect: "true"
nginx.ingress.kubernetes.io/whitelist-source-range: 10.0.0.0/8,172.16.0.0/12,192.168.0.0/16
labels:
app.kubernetes.io/instance: geoserver
app.kubernetes.io/name: geoserver
name: geoserver-internal
namespace: geoserver
spec:
ingressClassName: nginx
rules:
- host: geoserver.srv.oceanbox.io
http:
paths:
- backend:
service:
name: geoserver
port:
number: 8080
path: /geoserver
pathType: ImplementationSpecific
tls:
- hosts:
- geoserver.srv.oceanbox.io
secretName: prod-geoserver-tls
+4
View File
@@ -0,0 +1,4 @@
namePrefix: prod-
resources:
- ingress-web.yaml
- ../base
+111
View File
@@ -0,0 +1,111 @@
# Default values for geoserver.
# This is a YAML-formatted file.
# Declare variables to be passed into your templates.
image:
repository: docker.osgeo.org/geoserver
pullPolicy: IfNotPresent
# Overrides the image tag whose default is the chart appVersion.
tag: ""
auth:
username: admin
password: geoserver
# use an existing secret if specified
#existingSecret: geoserver-admin-password
#passwordKey: geoserver-admin-password
cors:
enabled: true
extension:
install: false
stableExtension: ""
demoData:
skip: true
startup:
failureThreshold: 10
periodSeconds: 30
imagePullSecrets: []
nameOverride: ""
fullnameOverride: "geoserver"
persistence:
size: 10Gi
accessModes: ReadWriteOnce
#existingClaim: someclaim
# the white list is needed for GUI working properly.
# the value for this should be the main URL for where geoserver get deployed.
# the values should be only url without http:// or https://, like "geoserver.example.com"
whitelist: "geoserver.beta.oceanbox.io"
# the following is for the geoserver java memory heap size control
envs:
extraJavaOpts: "-Xms512m -Xmx2g"
serviceAccount:
# Specifies whether a service account should be created
create: true
# Annotations to add to the service account
annotations: {}
# The name of the service account to use.
# If not set and create is true, a name is generated using the fullname template
name: ""
podAnnotations: {}
podSecurityContext:
fsGroup: 2000
securityContext:
capabilities:
drop:
- ALL
readOnlyRootFilesystem: false
allowPrivilegeEscalation: true
seccompProfile:
type: RuntimeDefault
runAsNonRoot: false
runAsUser: 0
service:
type: ClusterIP
port: 8080
ingress:
enabled: true
annotations:
cert-manager.io/cluster-issuer: letsencrypt-staging
nginx.ingress.kubernetes.io/backend-protocol: HTTP
nginx.ingress.kubernetes.io/ssl-redirect: "true"
nginx.ingress.kubernetes.io/whitelist-source-range: 10.0.0.0/8,172.16.0.0/12,192.168.0.0/16
hosts:
- host: geoserver.beta.oceanbox.io
tls:
- secretName: staging-geoserver-tls
hosts:
- geoserver.beta.oceanbox.io
resources: {}
# We usually recommend not to specify default resources and to leave this as a conscious
# choice for the user. This also increases chances charts run on environments with little
# resources, such as Minikube. If you do want to specify resources, uncomment the following
# lines, adjust them as necessary, and remove the curly braces after 'resources:'.
# limits:
# cpu: 100m
# memory: 128Mi
# requests:
# cpu: 100m
# memory: 128Mi
nodeSelector: {}
tolerations: []
affinity: {}
+31
View File
@@ -0,0 +1,31 @@
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
annotations:
cert-manager.io/cluster-issuer: letsencrypt-staging
nginx.ingress.kubernetes.io/backend-protocol: HTTP
nginx.ingress.kubernetes.io/ssl-redirect: "true"
nginx.ingress.kubernetes.io/whitelist-source-range: 10.0.0.0/8,172.16.0.0/12,192.168.0.0/16
labels:
app.kubernetes.io/instance: geoserver
app.kubernetes.io/name: geoserver
name: geoserver-internal
namespace: geoserver
spec:
ingressClassName: nginx
rules:
- host: geoserver.beta.oceanbox.io
http:
paths:
- backend:
service:
name: geoserver
port:
number: 8080
path: /geoserver
pathType: ImplementationSpecific
tls:
- hosts:
- geoserver.beta.oceanbox.io
secretName: staging-geoserver-tls
+4
View File
@@ -0,0 +1,4 @@
namePrefix: staging-
resources:
- ingress-web.yaml
- ../base
+106
View File
@@ -0,0 +1,106 @@
# Default values for geoserver.
# This is a YAML-formatted file.
# Declare variables to be passed into your templates.
image:
repository: docker.osgeo.org/geoserver
pullPolicy: IfNotPresent
# Overrides the image tag whose default is the chart appVersion.
tag: ""
auth:
username: admin
password: geoserver
# use an existing secret if specified
#existingSecret: geoserver-admin-password
#passwordKey: geoserver-admin-password
cors:
enabled: true
extension:
install: false
stableExtension: ""
demoData:
skip: true
startup:
failureThreshold: 10
periodSeconds: 30
imagePullSecrets: []
nameOverride: ""
fullnameOverride: ""
persistence:
size: 10Gi
accessModes: ReadWriteOnce
#existingClaim: someclaim
# the white list is needed for GUI working properly.
# the value for this should be the main URL for where geoserver get deployed.
# the values should be only url without http:// or https://, like "geoserver.example.com"
whitelist: ""
# the following is for the geoserver java memory heap size control
envs:
extraJavaOpts: "-Xms512m -Xmx2g"
serviceAccount:
# Specifies whether a service account should be created
create: true
# Annotations to add to the service account
annotations: {}
# The name of the service account to use.
# If not set and create is true, a name is generated using the fullname template
name: ""
podAnnotations: {}
podSecurityContext: {}
# fsGroup: 2000
securityContext: {}
# capabilities:
# drop:
# - ALL
# readOnlyRootFilesystem: true
# runAsNonRoot: true
# runAsUser: 1000
service:
type: ClusterIP
port: 8080
ingress:
enabled: false
annotations: {}
# kubernetes.io/ingress.class: nginx
# kubernetes.io/tls-acme: "true"
hosts:
- host: geoserver.local
tls: []
# - secretName: chart-example-tls
# hosts:
# - chart-example.local
resources: {}
# We usually recommend not to specify default resources and to leave this as a conscious
# choice for the user. This also increases chances charts run on environments with little
# resources, such as Minikube. If you do want to specify resources, uncomment the following
# lines, adjust them as necessary, and remove the curly braces after 'resources:'.
# limits:
# cpu: 100m
# memory: 128Mi
# requests:
# cpu: 100m
# memory: 128Mi
nodeSelector: {}
tolerations: []
affinity: {}