From bebaa5040fadf43d6b14f8de91397c3d7b1eba0d Mon Sep 17 00:00:00 2001 From: sonicaj Date: Wed, 19 Apr 2023 22:26:54 +0000 Subject: [PATCH] Update catalog information --- catalog.json | 23 +- .../nginx-proxy-manager/1.0.0/Chart.lock | 6 + .../nginx-proxy-manager/1.0.0/Chart.yaml | 25 +++ community/nginx-proxy-manager/1.0.0/README.md | 5 + .../nginx-proxy-manager/1.0.0/app-readme.md | 5 + .../1.0.0/charts/common-1.0.5.tgz | Bin 0 -> 54667 bytes .../1.0.0/ci/basic-values.yaml | 12 ++ .../nginx-proxy-manager/1.0.0/ix_values.yaml | 28 +++ .../nginx-proxy-manager/1.0.0/questions.yaml | 204 ++++++++++++++++++ .../1.0.0/templates/NOTES.txt | 1 + .../1.0.0/templates/_npm.tpl | 105 +++++++++ .../1.0.0/templates/_portal.tpl | 12 ++ .../1.0.0/templates/common.yaml | 9 + community/nginx-proxy-manager/item.yaml | 4 + 14 files changed, 437 insertions(+), 2 deletions(-) create mode 100644 community/nginx-proxy-manager/1.0.0/Chart.lock create mode 100644 community/nginx-proxy-manager/1.0.0/Chart.yaml create mode 100644 community/nginx-proxy-manager/1.0.0/README.md create mode 100644 community/nginx-proxy-manager/1.0.0/app-readme.md create mode 100644 community/nginx-proxy-manager/1.0.0/charts/common-1.0.5.tgz create mode 100644 community/nginx-proxy-manager/1.0.0/ci/basic-values.yaml create mode 100644 community/nginx-proxy-manager/1.0.0/ix_values.yaml create mode 100644 community/nginx-proxy-manager/1.0.0/questions.yaml create mode 100644 community/nginx-proxy-manager/1.0.0/templates/NOTES.txt create mode 100644 community/nginx-proxy-manager/1.0.0/templates/_npm.tpl create mode 100644 community/nginx-proxy-manager/1.0.0/templates/_portal.tpl create mode 100644 community/nginx-proxy-manager/1.0.0/templates/common.yaml create mode 100644 community/nginx-proxy-manager/item.yaml diff --git a/catalog.json b/catalog.json index d492547b4f..e75eb36ce7 100644 --- a/catalog.json +++ b/catalog.json @@ -30,7 +30,7 @@ "latest_version": "1.0.79", "latest_app_version": "2023.4.5", "latest_human_version": "2023.4.5_1.0.79", - "last_update": "2023-04-15 08:38:05", + "last_update": "2023-04-19 12:32:55", "name": "home-assistant", "recommended": false, "title": "Home Assistant", @@ -200,7 +200,7 @@ "latest_version": "1.7.38", "latest_app_version": "1.32.0.6950", "latest_human_version": "1.32.0.6950_1.7.38", - "last_update": "2023-04-13 12:39:59", + "last_update": "2023-04-19 12:32:55", "name": "plex", "recommended": false, "title": "Plex", @@ -460,6 +460,25 @@ "icon": "https://raw.githubusercontent.com/dani-garcia/vaultwarden/main/src/static/images/vaultwarden-icon.png", "icon_url": null }, + "nginx-proxy-manager": { + "app_readme": "

Nginx Proxy Manager

\n

Nginx Proxy Manager Expose your services easily and securely

\n
\n

Application requires to run as root. This is a limitation of the application.

\n
", + "categories": [ + "media", + "series" + ], + "description": "Expose your services easily and securely", + "healthy": true, + "healthy_error": null, + "location": "/__w/charts/charts/community/nginx-proxy-manager", + "latest_version": "1.0.0", + "latest_app_version": "2.10.2", + "latest_human_version": "2.10.2_1.0.0", + "last_update": null, + "name": "nginx-proxy-manager", + "recommended": false, + "title": "Nginx Proxy Manager", + "icon_url": "https://nginxproxymanager.com/logo.png" + }, "gitea": { "app_readme": "

Gitea

\n

Gitea - Git with a cup of tea

\n
\n

When application is installed, a container will be launched with root privileges.\nThis is required in order to apply the correct permissions to the gitea directories.\nAfterward, the gitea container will run as a non-root user (Default: 568).\nSame applies to the postgres container. This will run afterwards as a non-root user (999).\nOn each upgrade, a container will be launched with root privileges in order to apply the correct\npermissions to the postgres backups directory. Container that performs the backup will run as a non-root user (999) afterwards.\nKeep in mind the permissions on the backup directory will be changed to 999:999 on every update.\nBut will only be changed once for the gitea and postgres data directories.

\n
\n

On initial startup a setup wizard will be launched with settings for database, ports, path, and domain prefilled.\nKeep them as they are, fill anything you want in the optional settings section and click on Install Gitea.

", "categories": [ diff --git a/community/nginx-proxy-manager/1.0.0/Chart.lock b/community/nginx-proxy-manager/1.0.0/Chart.lock new file mode 100644 index 0000000000..c45b5f9c51 --- /dev/null +++ b/community/nginx-proxy-manager/1.0.0/Chart.lock @@ -0,0 +1,6 @@ +dependencies: +- name: common + repository: file://../../../common + version: 1.0.5 +digest: sha256:cf1db8c2ae650987a3e3d8d98767caab62c341bd0fb15309213b00dce87111cc +generated: "2023-04-12T17:17:40.41107506+03:00" diff --git a/community/nginx-proxy-manager/1.0.0/Chart.yaml b/community/nginx-proxy-manager/1.0.0/Chart.yaml new file mode 100644 index 0000000000..fa74f840c2 --- /dev/null +++ b/community/nginx-proxy-manager/1.0.0/Chart.yaml @@ -0,0 +1,25 @@ +name: nginx-proxy-manager +description: Expose your services easily and securely +annotations: + title: Nginx Proxy Manager +type: application +version: 1.0.0 +apiVersion: v2 +appVersion: '2.10.2' +kubeVersion: '>=1.16.0-0' +maintainers: + - name: truenas + url: https://www.truenas.com/ +dependencies: + - name: common + repository: file://../../../common + version: 1.0.5 +home: https://nginxproxymanager.com/ +icon: https://nginxproxymanager.com/logo.png +sources: + - https://nginxproxymanager.com/ + - https://github.com/truenas/charts/tree/master/community/nginx-proxy-manager + - https://hub.docker.com/r/jc21/nginx-proxy-manager +keywords: + - nginx + - proxy diff --git a/community/nginx-proxy-manager/1.0.0/README.md b/community/nginx-proxy-manager/1.0.0/README.md new file mode 100644 index 0000000000..9ab47b8479 --- /dev/null +++ b/community/nginx-proxy-manager/1.0.0/README.md @@ -0,0 +1,5 @@ +# Nginx Proxy Manager + +[Nginx Proxy Manager](https://nginxproxymanager.com) Expose your services easily and securely + +> Application requires to run as root. This is a limitation of the application. diff --git a/community/nginx-proxy-manager/1.0.0/app-readme.md b/community/nginx-proxy-manager/1.0.0/app-readme.md new file mode 100644 index 0000000000..9ab47b8479 --- /dev/null +++ b/community/nginx-proxy-manager/1.0.0/app-readme.md @@ -0,0 +1,5 @@ +# Nginx Proxy Manager + +[Nginx Proxy Manager](https://nginxproxymanager.com) Expose your services easily and securely + +> Application requires to run as root. This is a limitation of the application. diff --git a/community/nginx-proxy-manager/1.0.0/charts/common-1.0.5.tgz b/community/nginx-proxy-manager/1.0.0/charts/common-1.0.5.tgz new file mode 100644 index 0000000000000000000000000000000000000000..f817b7c94100a76df335a61186505db5ce331240 GIT binary patch literal 54667 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

YshOouC2O=7fXMe~@BnAM_Ii5sra8C? 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 literal 0 HcmV?d00001 diff --git a/community/nginx-proxy-manager/1.0.0/ci/basic-values.yaml b/community/nginx-proxy-manager/1.0.0/ci/basic-values.yaml new file mode 100644 index 0000000000..1eb88502e2 --- /dev/null +++ b/community/nginx-proxy-manager/1.0.0/ci/basic-values.yaml @@ -0,0 +1,12 @@ +npmNetwork: + webPort: 31000 + httpPort: 31001 + httpsPort: 31002 + +npmStorage: + data: + type: hostPath + hostPath: /mnt/{{ .Release.Name }}/data + certs: + type: hostPath + hostPath: /mnt/{{ .Release.Name }}/certs diff --git a/community/nginx-proxy-manager/1.0.0/ix_values.yaml b/community/nginx-proxy-manager/1.0.0/ix_values.yaml new file mode 100644 index 0000000000..8f3cf5b41e --- /dev/null +++ b/community/nginx-proxy-manager/1.0.0/ix_values.yaml @@ -0,0 +1,28 @@ +image: + repository: jc21/nginx-proxy-manager + pullPolicy: IfNotPresent + tag: '2.10.2' +resources: + limits: + cpu: 4000m + memory: 8Gi +npmConfig: + additionalEnvs: [] +npmNetwork: + webPort: 30000 + httpPort: 30001 + httpsPort: 30002 +npmStorage: + data: + type: ixVolume + hostPath: '' + datasetName: data + certs: + type: ixVolume + hostPath: '' + datasetName: certs +notes: + custom: | + Default credentials: + - username: admin@example.com + - password: changeme diff --git a/community/nginx-proxy-manager/1.0.0/questions.yaml b/community/nginx-proxy-manager/1.0.0/questions.yaml new file mode 100644 index 0000000000..a32a6b7528 --- /dev/null +++ b/community/nginx-proxy-manager/1.0.0/questions.yaml @@ -0,0 +1,204 @@ +groups: + - name: Nginx Proxy Manager Configuration + description: Configure Nginx Proxy Manager + - name: User and Group Configuration + description: Configure User and Group for Nginx Proxy Manager + - name: Network Configuration + description: Configure Network for Nginx Proxy Manager + - name: Storage Configuration + description: Configure Storage for Nginx Proxy Manager + - name: Resources Configuration + description: Configure Resources for Nginx Proxy Manager + +portals: + web_portal: + protocols: + - "$kubernetes-resource_configmap_portal_protocol" + host: + - "$kubernetes-resource_configmap_portal_host" + ports: + - "$kubernetes-resource_configmap_portal_port" + path: "$kubernetes-resource_configmap_portal_path" + +questions: + - variable: TZ + group: Nginx Proxy Manager Configuration + label: Timezone + schema: + type: string + default: Etc/UTC + required: true + $ref: + - definitions/timezone + + - variable: npmConfig + label: "" + group: Nginx Proxy Manager Configuration + schema: + type: dict + attrs: + - variable: additionalEnvs + label: Additional Environment Variables + description: Configure additional environment variables for Nginx Proxy Manager. + schema: + type: list + default: [] + items: + - variable: env + label: Environment Variable + schema: + type: dict + attrs: + - variable: name + label: Name + schema: + type: string + required: true + - variable: value + label: Value + schema: + type: string + required: true + + - variable: npmNetwork + label: "" + group: Network Configuration + schema: + type: dict + attrs: + - variable: webPort + label: Web Port + description: The port for the Nginx Proxy Manager Web UI. + schema: + type: int + default: 30000 + min: 9000 + max: 65535 + required: true + - variable: httpPort + label: HTTP Port + description: The HTTP port for the Nginx Proxy Manager. + schema: + type: int + default: 30001 + min: 9000 + max: 65535 + required: true + - variable: httpsPort + label: HTTPS Port + description: The HTTP port for the Nginx Proxy Manager. + schema: + type: int + default: 30002 + min: 9000 + max: 65535 + required: true + + - variable: npmStorage + label: "" + group: Storage Configuration + schema: + type: dict + attrs: + - variable: data + label: Nginx Proxy Manager Data Storage + description: The path to store Nginx Proxy Manager Data. + schema: + type: dict + attrs: + - variable: type + label: Type + description: | + ixVolume: Is dataset created automatically by the system.
+ Host Path: Is a path that already exists on the system. + schema: + type: string + required: true + default: "ixVolume" + enum: + - value: "hostPath" + description: Host Path (Path that already exists on the system) + - value: "ixVolume" + description: ixVolume (Dataset created automatically by the system) + - variable: datasetName + label: Dataset Name + schema: + type: string + show_if: [["type", "=", "ixVolume"]] + required: true + hidden: true + immutable: true + default: "data" + $ref: + - "normalize/ixVolume" + - variable: hostPath + label: Host Path + schema: + type: hostpath + show_if: [["type", "=", "hostPath"]] + immutable: true + required: true + - variable: certs + label: Nginx Proxy Manager Certificate Storage + description: The path to store Nginx Proxy Manager Certificate. + schema: + type: dict + attrs: + - variable: type + label: Type + description: | + ixVolume: Is dataset created automatically by the system.
+ Host Path: Is a path that already exists on the system. + schema: + type: string + required: true + default: "ixVolume" + enum: + - value: "hostPath" + description: Host Path (Path that already exists on the system) + - value: "ixVolume" + description: ixVolume (Dataset created automatically by the system) + - variable: datasetName + label: Dataset Name + schema: + type: string + show_if: [["type", "=", "ixVolume"]] + required: true + hidden: true + immutable: true + default: "certs" + $ref: + - "normalize/ixVolume" + - variable: hostPath + label: Host Path + schema: + type: hostpath + show_if: [["type", "=", "hostPath"]] + immutable: true + required: true + + - variable: resources + group: Resources Configuration + label: "" + schema: + type: dict + attrs: + - variable: limits + label: Limits + schema: + type: dict + attrs: + - variable: cpu + label: CPU + description: CPU limit for Nginx Proxy Manager. + schema: + type: string + default: "4000m" + required: true + - variable: memory + label: Memory + description: Memory limit for Nginx Proxy Manager. + schema: + type: string + default: "8Gi" + required: true diff --git a/community/nginx-proxy-manager/1.0.0/templates/NOTES.txt b/community/nginx-proxy-manager/1.0.0/templates/NOTES.txt new file mode 100644 index 0000000000..ba4e01146c --- /dev/null +++ b/community/nginx-proxy-manager/1.0.0/templates/NOTES.txt @@ -0,0 +1 @@ +{{ include "ix.v1.common.lib.chart.notes" $ }} diff --git a/community/nginx-proxy-manager/1.0.0/templates/_npm.tpl b/community/nginx-proxy-manager/1.0.0/templates/_npm.tpl new file mode 100644 index 0000000000..e9eb76886f --- /dev/null +++ b/community/nginx-proxy-manager/1.0.0/templates/_npm.tpl @@ -0,0 +1,105 @@ +{{- define "npm.workload" -}} +workload: + npm: + enabled: true + primary: true + type: Deployment + podSpec: + hostNetwork: false + securityContext: + fsGroup: 1000 + containers: + npm: + enabled: true + primary: true + imageSelector: image + securityContext: + runAsUser: 0 + runAsGroup: 0 + readOnlyRootFilesystem: false + runAsNonRoot: false + capabilities: + add: + # Needed for: s6-applyuidgid: fatal: unable to setuid: Operation not permitted + - SETUID + # Needed for: s6-applyuidgid: fatal: unable to set supplementary group list: Operation not permitted + - SETGID + # Needed for: Used in some s6-overlay startup scripts + - CHOWN + - DAC_OVERRIDE + # Needed for: Nginx Service + - FOWNER + fixedEnv: + # FIXME: Revisit once upstream irons out some issues in regarids with PUID. + # Make sure 568 PUID works before exposing + PUID: 1000 + env: + DISABLE_IPV6: true + DB_SQLITE_FILE: /data/database.sqlite + {{ with .Values.npmConfig.additionalEnvs }} + {{ range $env := . }} + {{ $env.name }}: {{ $env.value }} + {{ end }} + {{ end }} + probes: + liveness: + enabled: true + type: exec + command: /bin/check-health + readiness: + enabled: true + type: exec + command: /bin/check-health + startup: + enabled: true + type: exec + command: /bin/check-health +{{/* Service */}} +service: + npm: + enabled: true + primary: true + type: NodePort + targetSelector: npm + ports: + webui: + enabled: true + primary: true + port: {{ .Values.npmNetwork.webPort }} + nodePort: {{ .Values.npmNetwork.webPort }} + targetPort: 81 + targetSelector: npm + http: + enabled: true + port: {{ .Values.npmNetwork.httpPort }} + nodePort: {{ .Values.npmNetwork.httpPort }} + targetPort: 80 + targetSelector: npm + https: + enabled: true + port: {{ .Values.npmNetwork.httpsPort }} + nodePort: {{ .Values.npmNetwork.httpsPort }} + targetPort: 443 + targetSelector: npm + +{{/* Persistence */}} +persistence: + data: + enabled: true + type: {{ .Values.npmStorage.data.type }} + datasetName: {{ .Values.npmStorage.data.datasetName | default "" }} + hostPath: {{ .Values.npmStorage.data.hostPath | default "" }} + targetSelector: + npm: + npm: + mountPath: /data + certs: + enabled: true + type: {{ .Values.npmStorage.certs.type }} + datasetName: {{ .Values.npmStorage.certs.datasetName | default "" }} + hostPath: {{ .Values.npmStorage.certs.hostPath | default "" }} + targetSelector: + npm: + npm: + mountPath: /etc/letsencrypt +{{- end -}} diff --git a/community/nginx-proxy-manager/1.0.0/templates/_portal.tpl b/community/nginx-proxy-manager/1.0.0/templates/_portal.tpl new file mode 100644 index 0000000000..4d2ca959b3 --- /dev/null +++ b/community/nginx-proxy-manager/1.0.0/templates/_portal.tpl @@ -0,0 +1,12 @@ +{{- define "npm.portal" -}} +--- +apiVersion: v1 +kind: ConfigMap +metadata: + name: portal +data: + path: "/" + port: {{ .Values.npmNetwork.webPort | quote }} + protocol: http + host: $node_ip +{{- end -}} diff --git a/community/nginx-proxy-manager/1.0.0/templates/common.yaml b/community/nginx-proxy-manager/1.0.0/templates/common.yaml new file mode 100644 index 0000000000..185c880134 --- /dev/null +++ b/community/nginx-proxy-manager/1.0.0/templates/common.yaml @@ -0,0 +1,9 @@ +{{- include "ix.v1.common.loader.init" . -}} + +{{/* Merge the templates with Values */}} +{{- $_ := mustMergeOverwrite .Values (include "npm.workload" $ | fromYaml) -}} + +{{/* Create the configmap for portal manually*/}} +{{- include "npm.portal" $ -}} + +{{- include "ix.v1.common.loader.apply" . -}} diff --git a/community/nginx-proxy-manager/item.yaml b/community/nginx-proxy-manager/item.yaml new file mode 100644 index 0000000000..e2a8eaa90c --- /dev/null +++ b/community/nginx-proxy-manager/item.yaml @@ -0,0 +1,4 @@ +icon_url: https://nginxproxymanager.com/logo.png +categories: + - media + - series