Compare commits
36 Commits
alist-2.0.
...
adminer-0.
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
cb5a369c96 | ||
|
|
4f7e0a8cc0 | ||
|
|
86a66e1415 | ||
|
|
1cd2af561c | ||
|
|
844b10d2ee | ||
|
|
8cf72b1494 | ||
|
|
57aae7bb2e | ||
|
|
37f300bc41 | ||
|
|
f349ebde31 | ||
|
|
59a317efe4 | ||
|
|
9ab36fd2e2 | ||
|
|
44927183ef | ||
|
|
8fc5bb48cc | ||
|
|
29228ad01d | ||
|
|
2d783667a2 | ||
|
|
1d04e60e50 | ||
|
|
3a5a159813 | ||
|
|
f32437c367 | ||
|
|
58cea5a026 | ||
|
|
50306a5c5c | ||
|
|
8e9210fa6d | ||
|
|
ccf932740b | ||
|
|
46737b4916 | ||
|
|
12e426e779 | ||
|
|
36c5a714e1 | ||
|
|
63021f6f27 | ||
|
|
550b52bd77 | ||
|
|
c749cd1acd | ||
|
|
caa7b7b5ef | ||
|
|
c49b5565dc | ||
|
|
433b148de2 | ||
|
|
376de6207d | ||
|
|
a93151fb33 | ||
|
|
d0ce65055d | ||
|
|
373cc5168f | ||
|
|
5df55598b1 |
@@ -805,7 +805,8 @@
|
||||
"avatar_url": "https://avatars.githubusercontent.com/u/16634069?v=4",
|
||||
"profile": "https://github.com/I-nebukad-I",
|
||||
"contributions": [
|
||||
"bug"
|
||||
"bug",
|
||||
"code"
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
2
.github/README.md
vendored
@@ -242,7 +242,7 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d
|
||||
<td align="center"><a href="https://github.com/tfrancis"><img src="https://avatars.githubusercontent.com/u/29070?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Tyler Stransky</b></sub></a><br /><a href="https://github.com/truecharts/charts/issues?q=author%3Atfrancis" title="Bug reports">🐛</a></td>
|
||||
<td align="center"><a href="https://github.com/juggie"><img src="https://avatars.githubusercontent.com/u/2034757?v=4?s=100" width="100px;" alt=""/><br /><sub><b>juggie</b></sub></a><br /><a href="https://github.com/truecharts/charts/issues?q=author%3Ajuggie" title="Bug reports">🐛</a></td>
|
||||
<td align="center"><a href="https://github.com/btilford"><img src="https://avatars.githubusercontent.com/u/248725?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Ben Tilford</b></sub></a><br /><a href="https://github.com/truecharts/charts/issues?q=author%3Abtilford" title="Bug reports">🐛</a> <a href="https://github.com/truecharts/charts/commits?author=btilford" title="Code">💻</a></td>
|
||||
<td align="center"><a href="https://github.com/I-nebukad-I"><img src="https://avatars.githubusercontent.com/u/16634069?v=4?s=100" width="100px;" alt=""/><br /><sub><b>I-nebukad-I</b></sub></a><br /><a href="https://github.com/truecharts/charts/issues?q=author%3AI-nebukad-I" title="Bug reports">🐛</a></td>
|
||||
<td align="center"><a href="https://github.com/I-nebukad-I"><img src="https://avatars.githubusercontent.com/u/16634069?v=4?s=100" width="100px;" alt=""/><br /><sub><b>I-nebukad-I</b></sub></a><br /><a href="https://github.com/truecharts/charts/issues?q=author%3AI-nebukad-I" title="Bug reports">🐛</a> <a href="https://github.com/truecharts/charts/commits?author=I-nebukad-I" title="Code">💻</a></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="center"><a href="https://github.com/packruler"><img src="https://avatars.githubusercontent.com/u/770373?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Ethan Leisinger</b></sub></a><br /><a href="https://github.com/truecharts/charts/commits?author=packruler" title="Code">💻</a> <a href="https://github.com/truecharts/charts/commits?author=packruler" title="Documentation">📖</a></td>
|
||||
|
||||
55
.github/scripts/build-catalog.sh
vendored
@@ -296,6 +296,61 @@ include_questions(){
|
||||
/# Include{proxyProtocol}/ { for (i=0;i<n;++i) print a[i]; next }
|
||||
1' templates/questions/traefik/proxyProtocol.yaml ${target}/questions.yaml > "tmp${chartname}" && mv "tmp${chartname}" ${target}/questions.yaml
|
||||
|
||||
# Replace # Include{basicAuth} with the standard basicAuth codesnippet
|
||||
awk 'NR==FNR { a[n++]=$0; next }
|
||||
/# Include{basicAuth}/ { for (i=0;i<n;++i) print a[i]; next }
|
||||
1' templates/questions/traefik/middlewares/basicAuth.yaml ${target}/questions.yaml > "tmp${chartname}" && mv "tmp${chartname}" ${target}/questions.yaml
|
||||
|
||||
# Replace # Include{forwardAuth} with the standard forwardAuth codesnippet
|
||||
awk 'NR==FNR { a[n++]=$0; next }
|
||||
/# Include{forwardAuth}/ { for (i=0;i<n;++i) print a[i]; next }
|
||||
1' templates/questions/traefik/middlewares/forwardAuth.yaml ${target}/questions.yaml > "tmp${chartname}" && mv "tmp${chartname}" ${target}/questions.yaml
|
||||
|
||||
# Replace # Include{chain} with the standard chain codesnippet
|
||||
awk 'NR==FNR { a[n++]=$0; next }
|
||||
/# Include{chain}/ { for (i=0;i<n;++i) print a[i]; next }
|
||||
1' templates/questions/traefik/middlewares/chain.yaml ${target}/questions.yaml > "tmp${chartname}" && mv "tmp${chartname}" ${target}/questions.yaml
|
||||
|
||||
# Replace # Include{redirectScheme} with the standard redirectScheme codesnippet
|
||||
awk 'NR==FNR { a[n++]=$0; next }
|
||||
/# Include{redirectScheme}/ { for (i=0;i<n;++i) print a[i]; next }
|
||||
1' templates/questions/traefik/middlewares/redirectScheme.yaml ${target}/questions.yaml > "tmp${chartname}" && mv "tmp${chartname}" ${target}/questions.yaml
|
||||
|
||||
# Replace # Include{rateLimit} with the standard rateLimit codesnippet
|
||||
awk 'NR==FNR { a[n++]=$0; next }
|
||||
/# Include{rateLimit}/ { for (i=0;i<n;++i) print a[i]; next }
|
||||
1' templates/questions/traefik/middlewares/rateLimit.yaml ${target}/questions.yaml > "tmp${chartname}" && mv "tmp${chartname}" ${target}/questions.yaml
|
||||
|
||||
# Replace # Include{redirectRegex} with the standard redirectRegex codesnippet
|
||||
awk 'NR==FNR { a[n++]=$0; next }
|
||||
/# Include{redirectRegex}/ { for (i=0;i<n;++i) print a[i]; next }
|
||||
1' templates/questions/traefik/middlewares/redirectRegex.yaml ${target}/questions.yaml > "tmp${chartname}" && mv "tmp${chartname}" ${target}/questions.yaml
|
||||
|
||||
# Replace # Include{stripPrefixRegex} with the standard stripPrefixRegex codesnippet
|
||||
awk 'NR==FNR { a[n++]=$0; next }
|
||||
/# Include{stripPrefixRegex}/ { for (i=0;i<n;++i) print a[i]; next }
|
||||
1' templates/questions/traefik/middlewares/stripPrefixRegex.yaml ${target}/questions.yaml > "tmp${chartname}" && mv "tmp${chartname}" ${target}/questions.yaml
|
||||
|
||||
# Replace # Include{ipWhitelist} with the standard ipWhitelist codesnippet
|
||||
awk 'NR==FNR { a[n++]=$0; next }
|
||||
/# Include{ipWhitelist}/ { for (i=0;i<n;++i) print a[i]; next }
|
||||
1' templates/questions/traefik/middlewares/ipWhitelist.yaml ${target}/questions.yaml > "tmp${chartname}" && mv "tmp${chartname}" ${target}/questions.yaml
|
||||
|
||||
# Replace # Include{themePark} with the standard themePark codesnippet
|
||||
awk 'NR==FNR { a[n++]=$0; next }
|
||||
/# Include{themePark}/ { for (i=0;i<n;++i) print a[i]; next }
|
||||
1' templates/questions/traefik/middlewares/themePark.yaml ${target}/questions.yaml > "tmp${chartname}" && mv "tmp${chartname}" ${target}/questions.yaml
|
||||
|
||||
# Replace # Include{realIP} with the standard realIP codesnippet
|
||||
awk 'NR==FNR { a[n++]=$0; next }
|
||||
/# Include{realIP}/ { for (i=0;i<n;++i) print a[i]; next }
|
||||
1' templates/questions/traefik/middlewares/realIP.yaml ${target}/questions.yaml > "tmp${chartname}" && mv "tmp${chartname}" ${target}/questions.yaml
|
||||
|
||||
# Replace # Include{addPrefix} with the standard addPrefix codesnippet
|
||||
awk 'NR==FNR { a[n++]=$0; next }
|
||||
/# Include{addPrefix}/ { for (i=0;i<n;++i) print a[i]; next }
|
||||
1' templates/questions/traefik/middlewares/addPrefix.yaml ${target}/questions.yaml > "tmp${chartname}" && mv "tmp${chartname}" ${target}/questions.yaml
|
||||
|
||||
}
|
||||
export -f include_questions
|
||||
|
||||
|
||||
49
.github/scripts/updateTraefikMiddlewareVersions.sh
vendored
Executable file
@@ -0,0 +1,49 @@
|
||||
#! /bin/bash
|
||||
|
||||
trainsPath="./charts"
|
||||
traefikTrain="stable"
|
||||
|
||||
get_latest_release() {
|
||||
# Get latest release from GitHub api
|
||||
curl --silent \
|
||||
--header 'authorization: Bearer ${{ secrets.GITHUB_TOKEN }}' \
|
||||
--url "https://api.github.com/repos/$1/releases/latest" |
|
||||
# Get tag line
|
||||
grep '"tag_name":' |
|
||||
# Pluck JSON value
|
||||
sed -E 's/.*"([^"]+)".*/\1/'
|
||||
}
|
||||
|
||||
set_key_to_version() {
|
||||
key="$1"
|
||||
version="$2"
|
||||
traefikValuesFile="$trainsPath/$traefikTrain/traefik/values.yaml"
|
||||
echo "Setting $key to $version..."
|
||||
sed -i "s/${key}: .*/${key}: ${version}/" $traefikValuesFile
|
||||
|
||||
content=$(grep "$key:" "$traefikValuesFile" | sed "s/\s*${key}:\s*//" )
|
||||
echo "New content of $key in values.yaml: $content"
|
||||
echo ""
|
||||
}
|
||||
|
||||
update_plugin() {
|
||||
repo="$1"
|
||||
key="$2"
|
||||
pluginName="$3"
|
||||
|
||||
version=$(get_latest_release "$repo")
|
||||
if [ -z "$version" ]
|
||||
then
|
||||
echo "Got empty version, skipping..."
|
||||
else
|
||||
echo "Fetched $pluginName plugin version: $version"
|
||||
set_key_to_version "$key" "$version"
|
||||
fi;
|
||||
}
|
||||
# Example
|
||||
# update_plugin "repo" "key_holding_version_in_values.yaml" "plugin_name_used_for_verbose_printing_only"
|
||||
# Real IP
|
||||
update_plugin "soulbalz/traefik-real-ip" "realIPVersion" "RealIP"
|
||||
|
||||
# Theme Park
|
||||
update_plugin "packruler/traefik-themepark" "themeParkVersion" "ThemePark"
|
||||
2
.github/workflows/renovate-bump.yaml
vendored
@@ -45,7 +45,7 @@ jobs:
|
||||
echo "changed apps: ${APPS[*]}"
|
||||
for chart in ${APPS[*]}
|
||||
do
|
||||
if [[ "${chart}" == '.gitkee' ]]; then
|
||||
if [[ "${chart}" == '.gitkeep' ]]; then
|
||||
echo "Skipping..."
|
||||
return
|
||||
elif test -f "./charts/stable/${chart}/Chart.yaml"; then
|
||||
|
||||
2
.github/workflows/renovate.yml
vendored
@@ -12,7 +12,7 @@ jobs:
|
||||
with:
|
||||
token: ${{ secrets.BOT_TOKEN }}
|
||||
- name: Self-hosted Renovate
|
||||
uses: renovatebot/github-action@88446f41092c9f7478c3d63199749db7a3b7e6e9 # tag=v32.202.3
|
||||
uses: renovatebot/github-action@d46f9c6679e39ca1274a71d3ea8d444e11af11c4 # tag=v32.202.4
|
||||
with:
|
||||
configurationFile: .github/renovate-config.js
|
||||
token: ${{ secrets.BOT_TOKEN }}
|
||||
|
||||
@@ -2,19 +2,39 @@
|
||||
|
||||
|
||||
|
||||
## [clickhouse-1.0.28](https://github.com/truecharts/charts/compare/clickhouse-1.0.26...clickhouse-1.0.28) (2022-09-23)
|
||||
## [memcached-3.0.83](https://github.com/truecharts/charts/compare/memcached-3.0.82...memcached-3.0.83) (2022-09-25)
|
||||
|
||||
### Chore
|
||||
|
||||
- Auto-update chart README [skip ci]
|
||||
- update helm chart common to v10.6.1 ([#3893](https://github.com/truecharts/charts/issues/3893))
|
||||
|
||||
|
||||
|
||||
|
||||
## [memcached-3.0.82](https://github.com/truecharts/charts/compare/memcached-3.0.81...memcached-3.0.82) (2022-09-25)
|
||||
|
||||
### Chore
|
||||
|
||||
- Auto-update chart README [skip ci]
|
||||
- update docker general non-major ([#3881](https://github.com/truecharts/charts/issues/3881))
|
||||
|
||||
|
||||
|
||||
|
||||
## [memcached-3.0.81](https://github.com/truecharts/charts/compare/memcached-3.0.79...memcached-3.0.81) (2022-09-24)
|
||||
|
||||
### Chore
|
||||
|
||||
- Auto-update chart README [skip ci]
|
||||
- Auto-update chart README [skip ci]
|
||||
- update docker general non-major ([#3850](https://github.com/truecharts/charts/issues/3850))
|
||||
- update helm chart common to v10.6.0
|
||||
- update helm chart common to v10.5.12
|
||||
|
||||
|
||||
|
||||
|
||||
## [clickhouse-1.0.27](https://github.com/truecharts/charts/compare/clickhouse-1.0.26...clickhouse-1.0.27) (2022-09-22)
|
||||
## [memcached-3.0.80](https://github.com/truecharts/charts/compare/memcached-3.0.79...memcached-3.0.80) (2022-09-22)
|
||||
|
||||
### Chore
|
||||
|
||||
@@ -24,7 +44,7 @@
|
||||
|
||||
|
||||
|
||||
## [clickhouse-1.0.26](https://github.com/truecharts/charts/compare/clickhouse-1.0.25...clickhouse-1.0.26) (2022-09-22)
|
||||
## [memcached-3.0.79](https://github.com/truecharts/charts/compare/memcached-3.0.76...memcached-3.0.79) (2022-09-22)
|
||||
|
||||
### Chore
|
||||
|
||||
@@ -41,13 +61,15 @@
|
||||
- Auto-update chart README [skip ci]
|
||||
- Auto-update chart README [skip ci]
|
||||
- refactor Services SCALE GUI
|
||||
- update docker general non-major ([#3772](https://github.com/truecharts/charts/issues/3772))
|
||||
- update docker general non-major ([#3790](https://github.com/truecharts/charts/issues/3790))
|
||||
- update docker general non-major ([#3839](https://github.com/truecharts/charts/issues/3839))
|
||||
- update docker general non-major ([#3787](https://github.com/truecharts/charts/issues/3787))
|
||||
- split serviceSelector ([#3751](https://github.com/truecharts/charts/issues/3751))
|
||||
|
||||
|
||||
|
||||
|
||||
## [clickhouse-1.0.26](https://github.com/truecharts/charts/compare/clickhouse-1.0.25...clickhouse-1.0.26) (2022-09-21)
|
||||
## [memcached-3.0.79](https://github.com/truecharts/charts/compare/memcached-3.0.76...memcached-3.0.79) (2022-09-22)
|
||||
|
||||
### Chore
|
||||
|
||||
@@ -63,13 +85,15 @@
|
||||
- Auto-update chart README [skip ci]
|
||||
- Auto-update chart README [skip ci]
|
||||
- refactor Services SCALE GUI
|
||||
- update docker general non-major ([#3772](https://github.com/truecharts/charts/issues/3772))
|
||||
- update docker general non-major ([#3839](https://github.com/truecharts/charts/issues/3839))
|
||||
- update docker general non-major ([#3790](https://github.com/truecharts/charts/issues/3790))
|
||||
- update docker general non-major ([#3787](https://github.com/truecharts/charts/issues/3787))
|
||||
- split serviceSelector ([#3751](https://github.com/truecharts/charts/issues/3751))
|
||||
|
||||
|
||||
|
||||
|
||||
## [clickhouse-1.0.26](https://github.com/truecharts/charts/compare/clickhouse-1.0.25...clickhouse-1.0.26) (2022-09-21)
|
||||
## [memcached-3.0.78](https://github.com/truecharts/charts/compare/memcached-3.0.76...memcached-3.0.78) (2022-09-21)
|
||||
|
||||
### Chore
|
||||
|
||||
@@ -84,27 +108,8 @@
|
||||
- Auto-update chart README [skip ci]
|
||||
- Auto-update chart README [skip ci]
|
||||
- refactor Services SCALE GUI
|
||||
- update docker general non-major ([#3772](https://github.com/truecharts/charts/issues/3772))
|
||||
- split serviceSelector ([#3751](https://github.com/truecharts/charts/issues/3751))
|
||||
|
||||
|
||||
|
||||
|
||||
## [clickhouse-1.0.26](https://github.com/truecharts/charts/compare/clickhouse-1.0.25...clickhouse-1.0.26) (2022-09-20)
|
||||
|
||||
### Chore
|
||||
|
||||
- Auto-update chart README [skip ci]
|
||||
- Auto-update chart README [skip ci]
|
||||
- Auto-update chart README [skip ci]
|
||||
- Auto-update chart README [skip ci]
|
||||
- Auto-update chart README [skip ci]
|
||||
- Auto-update chart README [skip ci]
|
||||
- Auto-update chart README [skip ci]
|
||||
- Auto-update chart README [skip ci]
|
||||
- Auto-update chart README [skip ci]
|
||||
- refactor Services SCALE GUI
|
||||
- update docker general non-major ([#3772](https://github.com/truecharts/charts/issues/3772))
|
||||
- update docker general non-major ([#3790](https://github.com/truecharts/charts/issues/3790))
|
||||
- update docker general non-major ([#3787](https://github.com/truecharts/charts/issues/3787))
|
||||
- split serviceSelector ([#3751](https://github.com/truecharts/charts/issues/3751))
|
||||
|
||||
|
||||
@@ -122,6 +127,7 @@
|
||||
- Auto-update chart README [skip ci]
|
||||
- Auto-update chart README [skip ci]
|
||||
- Auto-update chart README [skip ci]
|
||||
- Auto-update chart README [skip ci]
|
||||
- refactor Services SCALE GUI
|
||||
- update docker general non-major ([#3790](https://github.com/truecharts/charts/issues/3790))
|
||||
- update docker general non-major ([#3787](https://github.com/truecharts/charts/issues/3787))
|
||||
@@ -130,6 +136,7 @@
|
||||
|
||||
|
||||
|
||||
|
||||
## [memcached-3.0.78](https://github.com/truecharts/charts/compare/memcached-3.0.76...memcached-3.0.78) (2022-09-19)
|
||||
|
||||
### Chore
|
||||
|
||||
@@ -3,7 +3,7 @@ appVersion: "22.9.2.7"
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: https://library-charts.truecharts.org
|
||||
version: 10.6.0
|
||||
version: 10.6.1
|
||||
deprecated: false
|
||||
description: ClickHouse is a column-oriented database management system (DBMS) for online analytical processing of queries (OLAP).
|
||||
home: https://truecharts.org/docs/charts/dependency/clickhouse
|
||||
@@ -23,7 +23,7 @@ sources:
|
||||
- https://clickhouse.com/
|
||||
- https://hub.docker.com/r/yandex/clickhouse-server
|
||||
type: application
|
||||
version: 1.0.29
|
||||
version: 1.0.30
|
||||
annotations:
|
||||
truecharts.org/catagories: |
|
||||
- database
|
||||
|
||||
@@ -23,7 +23,7 @@ Kubernetes: `>=1.16.0-0`
|
||||
|
||||
| Repository | Name | Version |
|
||||
|------------|------|---------|
|
||||
| https://library-charts.truecharts.org | common | 10.5.12 |
|
||||
| https://library-charts.truecharts.org | common | 10.6.1 |
|
||||
|
||||
## Installing the Chart
|
||||
|
||||
|
||||
@@ -2,6 +2,28 @@
|
||||
|
||||
|
||||
|
||||
## [collabora-online-12.1.46](https://github.com/truecharts/charts/compare/collabora-online-12.1.45...collabora-online-12.1.46) (2022-09-25)
|
||||
|
||||
### Chore
|
||||
|
||||
- Auto-update chart README [skip ci]
|
||||
- update helm chart common to v10.6.1 ([#3893](https://github.com/truecharts/charts/issues/3893))
|
||||
|
||||
|
||||
|
||||
|
||||
## [collabora-online-12.1.45](https://github.com/truecharts/charts/compare/collabora-online-12.1.43...collabora-online-12.1.45) (2022-09-24)
|
||||
|
||||
### Chore
|
||||
|
||||
- Auto-update chart README [skip ci]
|
||||
- Auto-update chart README [skip ci]
|
||||
- update helm chart common to v10.6.0
|
||||
- update helm chart common to v10.5.12
|
||||
|
||||
|
||||
|
||||
|
||||
## [collabora-online-12.1.44](https://github.com/truecharts/charts/compare/collabora-online-12.1.43...collabora-online-12.1.44) (2022-09-22)
|
||||
|
||||
### Chore
|
||||
|
||||
@@ -3,7 +3,7 @@ appVersion: "22.05.6.1"
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: https://library-charts.truecharts.org
|
||||
version: 10.6.0
|
||||
version: 10.6.1
|
||||
deprecated: false
|
||||
description: "An awesome Online Office suite."
|
||||
home: https://truecharts.org/docs/charts/dependency/collabora-online
|
||||
@@ -22,7 +22,7 @@ sources:
|
||||
- https://sdk.collaboraonline.com/contents.html
|
||||
- https://github.com/CollaboraOnline/online/tree/master/kubernetes/helm
|
||||
type: application
|
||||
version: 12.1.45
|
||||
version: 12.1.46
|
||||
annotations:
|
||||
truecharts.org/catagories: |
|
||||
- office
|
||||
|
||||
@@ -24,7 +24,7 @@ Kubernetes: `>=1.16.0-0`
|
||||
|
||||
| Repository | Name | Version |
|
||||
|------------|------|---------|
|
||||
| https://library-charts.truecharts.org | common | 10.5.12 |
|
||||
| https://library-charts.truecharts.org | common | 10.6.1 |
|
||||
|
||||
## Installing the Chart
|
||||
|
||||
|
||||
@@ -2,6 +2,26 @@
|
||||
|
||||
|
||||
|
||||
## [mariadb-3.0.82](https://github.com/truecharts/charts/compare/mariadb-3.0.81...mariadb-3.0.82) (2022-09-25)
|
||||
|
||||
### Chore
|
||||
|
||||
- Auto-update chart README [skip ci]
|
||||
- update helm chart common to v10.6.1 ([#3893](https://github.com/truecharts/charts/issues/3893))
|
||||
|
||||
|
||||
|
||||
|
||||
## [mariadb-3.0.81](https://github.com/truecharts/charts/compare/mariadb-3.0.80...mariadb-3.0.81) (2022-09-24)
|
||||
|
||||
### Chore
|
||||
|
||||
- Auto-update chart README [skip ci]
|
||||
- update helm chart common to v10.6.0
|
||||
|
||||
|
||||
|
||||
|
||||
## [mariadb-3.0.80](https://github.com/truecharts/charts/compare/mariadb-3.0.78...mariadb-3.0.80) (2022-09-24)
|
||||
|
||||
### Chore
|
||||
|
||||
@@ -3,7 +3,7 @@ appVersion: "10.9.3"
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: https://library-charts.truecharts.org
|
||||
version: 10.6.0
|
||||
version: 10.6.1
|
||||
deprecated: false
|
||||
description: Fast, reliable, scalable, and easy to use open-source relational database system.
|
||||
home: https://truecharts.org/docs/charts/dependency/mariadb
|
||||
@@ -25,7 +25,7 @@ sources:
|
||||
- https://github.com/prometheus/mysqld_exporter
|
||||
- https://mariadb.org
|
||||
type: application
|
||||
version: 3.0.81
|
||||
version: 3.0.82
|
||||
annotations:
|
||||
truecharts.org/catagories: |
|
||||
- database
|
||||
|
||||
@@ -24,7 +24,7 @@ Kubernetes: `>=1.16.0-0`
|
||||
|
||||
| Repository | Name | Version |
|
||||
|------------|------|---------|
|
||||
| https://library-charts.truecharts.org | common | 10.5.12 |
|
||||
| https://library-charts.truecharts.org | common | 10.6.1 |
|
||||
|
||||
## Installing the Chart
|
||||
|
||||
|
||||
@@ -2,6 +2,29 @@
|
||||
|
||||
|
||||
|
||||
|
||||
## [memcached-3.0.82](https://github.com/truecharts/charts/compare/memcached-3.0.81...memcached-3.0.82) (2022-09-25)
|
||||
|
||||
### Chore
|
||||
|
||||
- Auto-update chart README [skip ci]
|
||||
- update docker general non-major ([#3881](https://github.com/truecharts/charts/issues/3881))
|
||||
|
||||
|
||||
|
||||
|
||||
## [memcached-3.0.81](https://github.com/truecharts/charts/compare/memcached-3.0.79...memcached-3.0.81) (2022-09-24)
|
||||
|
||||
### Chore
|
||||
|
||||
- Auto-update chart README [skip ci]
|
||||
- Auto-update chart README [skip ci]
|
||||
- update helm chart common to v10.6.0
|
||||
- update helm chart common to v10.5.12
|
||||
|
||||
|
||||
|
||||
|
||||
## [memcached-3.0.80](https://github.com/truecharts/charts/compare/memcached-3.0.79...memcached-3.0.80) (2022-09-22)
|
||||
|
||||
### Chore
|
||||
|
||||
@@ -3,7 +3,7 @@ appVersion: "1.6.17"
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: https://library-charts.truecharts.org
|
||||
version: 10.6.0
|
||||
version: 10.6.1
|
||||
deprecated: false
|
||||
description: Memcached is a memory-backed database caching solution
|
||||
home: https://truecharts.org/docs/charts/dependency/memcached
|
||||
@@ -23,7 +23,7 @@ sources:
|
||||
- https://github.com/bitnami/bitnami-docker-memcached
|
||||
- http://memcached.org/
|
||||
type: application
|
||||
version: 3.0.81
|
||||
version: 3.0.83
|
||||
annotations:
|
||||
truecharts.org/catagories: |
|
||||
- database
|
||||
|
||||
@@ -23,7 +23,7 @@ Kubernetes: `>=1.16.0-0`
|
||||
|
||||
| Repository | Name | Version |
|
||||
|------------|------|---------|
|
||||
| https://library-charts.truecharts.org | common | 10.5.12 |
|
||||
| https://library-charts.truecharts.org | common | 10.6.1 |
|
||||
|
||||
## Installing the Chart
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
image:
|
||||
repository: tccr.io/truecharts/memcached
|
||||
pullPolicy: IfNotPresent
|
||||
tag: 1.6.17@sha256:3892377610baf88e3327e27214fe310bec2e817f64fa180ff78ce08a95f9394e
|
||||
tag: 1.6.17@sha256:3d1a37f202fc3e9537db3c99c5479631b68ff42046ea061501833c17035a7789
|
||||
|
||||
service:
|
||||
main:
|
||||
|
||||
@@ -2,6 +2,26 @@
|
||||
|
||||
|
||||
|
||||
## [mongodb-2.0.21](https://github.com/truecharts/charts/compare/mongodb-2.0.20...mongodb-2.0.21) (2022-09-25)
|
||||
|
||||
### Chore
|
||||
|
||||
- Auto-update chart README [skip ci]
|
||||
- update helm chart common to v10.6.1 ([#3893](https://github.com/truecharts/charts/issues/3893))
|
||||
|
||||
|
||||
|
||||
|
||||
## [mongodb-2.0.20](https://github.com/truecharts/charts/compare/mongodb-2.0.19...mongodb-2.0.20) (2022-09-24)
|
||||
|
||||
### Chore
|
||||
|
||||
- Auto-update chart README [skip ci]
|
||||
- update helm chart common to v10.6.0
|
||||
|
||||
|
||||
|
||||
|
||||
## [mongodb-2.0.19](https://github.com/truecharts/charts/compare/mongodb-2.0.17...mongodb-2.0.19) (2022-09-24)
|
||||
|
||||
### Chore
|
||||
|
||||
@@ -3,7 +3,7 @@ appVersion: "6.0.1"
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: https://library-charts.truecharts.org
|
||||
version: 10.6.0
|
||||
version: 10.6.1
|
||||
deprecated: false
|
||||
description: Fast, reliable, scalable, and easy to use open-source no-sql database system.
|
||||
home: https://truecharts.org/docs/charts/dependency/mongodb
|
||||
@@ -24,7 +24,7 @@ sources:
|
||||
- https://github.com/bitnami/bitnami-docker-mongodb
|
||||
- https://www.mongodb.com
|
||||
type: application
|
||||
version: 2.0.20
|
||||
version: 2.0.21
|
||||
annotations:
|
||||
truecharts.org/catagories: |
|
||||
- database
|
||||
|
||||
@@ -24,7 +24,7 @@ Kubernetes: `>=1.16.0-0`
|
||||
|
||||
| Repository | Name | Version |
|
||||
|------------|------|---------|
|
||||
| https://library-charts.truecharts.org | common | 10.5.12 |
|
||||
| https://library-charts.truecharts.org | common | 10.6.1 |
|
||||
|
||||
## Installing the Chart
|
||||
|
||||
|
||||
@@ -2,6 +2,38 @@
|
||||
|
||||
|
||||
|
||||
## [postgresql-8.0.87](https://github.com/truecharts/charts/compare/postgresql-8.0.86...postgresql-8.0.87) (2022-09-25)
|
||||
|
||||
### Chore
|
||||
|
||||
- Auto-update chart README [skip ci]
|
||||
- update helm chart common to v10.6.1 ([#3893](https://github.com/truecharts/charts/issues/3893))
|
||||
|
||||
|
||||
|
||||
|
||||
## [postgresql-8.0.86](https://github.com/truecharts/charts/compare/postgresql-8.0.85...postgresql-8.0.86) (2022-09-25)
|
||||
|
||||
### Chore
|
||||
|
||||
- Auto-update chart README [skip ci]
|
||||
- update docker general non-major ([#3881](https://github.com/truecharts/charts/issues/3881))
|
||||
|
||||
|
||||
|
||||
|
||||
## [postgresql-8.0.85](https://github.com/truecharts/charts/compare/postgresql-8.0.83...postgresql-8.0.85) (2022-09-24)
|
||||
|
||||
### Chore
|
||||
|
||||
- Auto-update chart README [skip ci]
|
||||
- Auto-update chart README [skip ci]
|
||||
- update helm chart common to v10.6.0
|
||||
- update helm chart common to v10.5.12
|
||||
|
||||
|
||||
|
||||
|
||||
## [postgresql-8.0.84](https://github.com/truecharts/charts/compare/postgresql-8.0.83...postgresql-8.0.84) (2022-09-22)
|
||||
|
||||
### Chore
|
||||
|
||||
@@ -3,7 +3,7 @@ appVersion: "14.5.0"
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: https://library-charts.truecharts.org
|
||||
version: 10.6.0
|
||||
version: 10.6.1
|
||||
deprecated: false
|
||||
description: PostgresSQL
|
||||
home: https://truecharts.org/docs/charts/dependency/postgresql
|
||||
@@ -23,7 +23,7 @@ sources:
|
||||
- https://github.com/truecharts/charts/tree/master/charts/dependency/postgresql
|
||||
- https://www.postgresql.org/
|
||||
type: application
|
||||
version: 8.0.85
|
||||
version: 8.0.87
|
||||
annotations:
|
||||
truecharts.org/catagories: |
|
||||
- database
|
||||
|
||||
@@ -22,7 +22,7 @@ Kubernetes: `>=1.16.0-0`
|
||||
|
||||
| Repository | Name | Version |
|
||||
|------------|------|---------|
|
||||
| https://library-charts.truecharts.org | common | 10.5.12 |
|
||||
| https://library-charts.truecharts.org | common | 10.6.1 |
|
||||
|
||||
## Installing the Chart
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
image:
|
||||
repository: tccr.io/truecharts/postgresql
|
||||
pullPolicy: IfNotPresent
|
||||
tag: 14.5.0@sha256:3d2e303e6ccc9fb8ecf110317381da38b0193a8ac85488514ec9d92345e9a69a
|
||||
tag: 14.5.0@sha256:aa74c071ccea630972060d1291cacf4b58a8a549fca9d0d298ca115d5f8a536e
|
||||
|
||||
controller:
|
||||
# -- Set the controller type.
|
||||
|
||||
@@ -2,6 +2,26 @@
|
||||
|
||||
|
||||
|
||||
## [promtail-3.0.54](https://github.com/truecharts/charts/compare/promtail-3.0.53...promtail-3.0.54) (2022-09-25)
|
||||
|
||||
### Chore
|
||||
|
||||
- Auto-update chart README [skip ci]
|
||||
- update helm chart common to v10.6.1 ([#3893](https://github.com/truecharts/charts/issues/3893))
|
||||
|
||||
|
||||
|
||||
|
||||
## [promtail-3.0.53](https://github.com/truecharts/charts/compare/promtail-3.0.52...promtail-3.0.53) (2022-09-24)
|
||||
|
||||
### Chore
|
||||
|
||||
- Auto-update chart README [skip ci]
|
||||
- update helm chart common to v10.6.0
|
||||
|
||||
|
||||
|
||||
|
||||
## [promtail-3.0.52](https://github.com/truecharts/charts/compare/promtail-3.0.51...promtail-3.0.52) (2022-09-22)
|
||||
|
||||
### Chore
|
||||
|
||||
@@ -3,7 +3,7 @@ appVersion: "2.6.1"
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: https://library-charts.truecharts.org
|
||||
version: 10.6.0
|
||||
version: 10.6.1
|
||||
deprecated: false
|
||||
description: Promtail is an agent which ships the contents of local logs to a Loki instance
|
||||
icon: https://truecharts.org/img/hotlink-ok/chart-icons/promtail.png
|
||||
@@ -23,7 +23,7 @@ sources:
|
||||
- https://grafana.com/oss/loki/
|
||||
- https://grafana.com/docs/loki/latest/
|
||||
type: application
|
||||
version: 3.0.53
|
||||
version: 3.0.54
|
||||
annotations:
|
||||
truecharts.org/catagories: |
|
||||
- metrics
|
||||
|
||||
@@ -24,7 +24,7 @@ Kubernetes: `>=1.16.0-0`
|
||||
|
||||
| Repository | Name | Version |
|
||||
|------------|------|---------|
|
||||
| https://library-charts.truecharts.org | common | 10.5.12 |
|
||||
| https://library-charts.truecharts.org | common | 10.6.1 |
|
||||
|
||||
## Installing the Chart
|
||||
|
||||
|
||||
@@ -2,6 +2,36 @@
|
||||
|
||||
|
||||
|
||||
## [redis-3.0.84](https://github.com/truecharts/charts/compare/redis-3.0.83...redis-3.0.84) (2022-09-25)
|
||||
|
||||
### Chore
|
||||
|
||||
- Auto-update chart README [skip ci]
|
||||
- update helm chart common to v10.6.1 ([#3893](https://github.com/truecharts/charts/issues/3893))
|
||||
|
||||
|
||||
|
||||
|
||||
## [redis-3.0.83](https://github.com/truecharts/charts/compare/redis-3.0.82...redis-3.0.83) (2022-09-25)
|
||||
|
||||
### Chore
|
||||
|
||||
- Auto-update chart README [skip ci]
|
||||
- update docker general non-major ([#3881](https://github.com/truecharts/charts/issues/3881))
|
||||
|
||||
|
||||
|
||||
|
||||
## [redis-3.0.82](https://github.com/truecharts/charts/compare/redis-3.0.81...redis-3.0.82) (2022-09-24)
|
||||
|
||||
### Chore
|
||||
|
||||
- Auto-update chart README [skip ci]
|
||||
- update helm chart common to v10.6.0
|
||||
|
||||
|
||||
|
||||
|
||||
## [redis-3.0.81](https://github.com/truecharts/charts/compare/tubearchivist-redisjson-0.0.24...redis-3.0.81) (2022-09-23)
|
||||
|
||||
### Chore
|
||||
|
||||
@@ -3,7 +3,7 @@ appVersion: "7.0.5"
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: https://library-charts.truecharts.org
|
||||
version: 10.6.0
|
||||
version: 10.6.1
|
||||
deprecated: false
|
||||
description: Open source, advanced key-value store.
|
||||
home: https://truecharts.org/docs/charts/dependency/redis
|
||||
@@ -23,7 +23,7 @@ sources:
|
||||
- https://github.com/bitnami/bitnami-docker-redis
|
||||
- http://redis.io/
|
||||
type: application
|
||||
version: 3.0.82
|
||||
version: 3.0.84
|
||||
annotations:
|
||||
truecharts.org/catagories: |
|
||||
- database
|
||||
|
||||
@@ -23,7 +23,7 @@ Kubernetes: `>=1.16.0-0`
|
||||
|
||||
| Repository | Name | Version |
|
||||
|------------|------|---------|
|
||||
| https://library-charts.truecharts.org | common | 10.5.12 |
|
||||
| https://library-charts.truecharts.org | common | 10.6.1 |
|
||||
|
||||
## Installing the Chart
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
image:
|
||||
repository: tccr.io/truecharts/redis
|
||||
pullPolicy: IfNotPresent
|
||||
tag: 7.0.5@sha256:5f9b8bbed47bc0966268ca9d32322dc1a6b69475216615a02eba645a3a12f3ec
|
||||
tag: 7.0.5@sha256:4f459d0cc8a71dd77394eea4e2ae4a874ba95783ec584af2981a08c31351fff9
|
||||
|
||||
controller:
|
||||
# -- Set the controller type.
|
||||
|
||||
@@ -2,6 +2,38 @@
|
||||
|
||||
|
||||
|
||||
## [solr-0.0.55](https://github.com/truecharts/charts/compare/solr-0.0.54...solr-0.0.55) (2022-09-25)
|
||||
|
||||
### Chore
|
||||
|
||||
- Auto-update chart README [skip ci]
|
||||
- update helm chart common to v10.6.1 ([#3893](https://github.com/truecharts/charts/issues/3893))
|
||||
|
||||
|
||||
|
||||
|
||||
## [solr-0.0.54](https://github.com/truecharts/charts/compare/solr-0.0.53...solr-0.0.54) (2022-09-25)
|
||||
|
||||
### Chore
|
||||
|
||||
- Auto-update chart README [skip ci]
|
||||
- update docker general non-major ([#3881](https://github.com/truecharts/charts/issues/3881))
|
||||
|
||||
|
||||
|
||||
|
||||
## [solr-0.0.53](https://github.com/truecharts/charts/compare/solr-0.0.51...solr-0.0.53) (2022-09-24)
|
||||
|
||||
### Chore
|
||||
|
||||
- Auto-update chart README [skip ci]
|
||||
- Auto-update chart README [skip ci]
|
||||
- update helm chart common to v10.6.0
|
||||
- update helm chart common to v10.5.12
|
||||
|
||||
|
||||
|
||||
|
||||
## [solr-0.0.52](https://github.com/truecharts/charts/compare/solr-0.0.51...solr-0.0.52) (2022-09-22)
|
||||
|
||||
### Chore
|
||||
|
||||
@@ -3,7 +3,7 @@ appVersion: "9.0.0"
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: https://library-charts.truecharts.org
|
||||
version: 10.6.0
|
||||
version: 10.6.1
|
||||
deprecated: false
|
||||
description: Apache Solr
|
||||
home: https://truecharts.org/docs/charts/dependency/solr
|
||||
@@ -23,7 +23,7 @@ sources:
|
||||
- https://github.com/apache/solr
|
||||
- https://hub.docker.com/r/bitnami/solr/
|
||||
type: application
|
||||
version: 0.0.53
|
||||
version: 0.0.55
|
||||
annotations:
|
||||
truecharts.org/catagories: |
|
||||
- search
|
||||
|
||||
@@ -23,7 +23,7 @@ Kubernetes: `>=1.16.0-0`
|
||||
|
||||
| Repository | Name | Version |
|
||||
|------------|------|---------|
|
||||
| https://library-charts.truecharts.org | common | 10.5.12 |
|
||||
| https://library-charts.truecharts.org | common | 10.6.1 |
|
||||
|
||||
## Installing the Chart
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
image:
|
||||
repository: tccr.io/truecharts/solr
|
||||
pullPolicy: IfNotPresent
|
||||
tag: v9.0.0@sha256:bf36dd644eedf3bde0339dcea6ba99403a54d4254e22e90051d445f7fb4d8d4a
|
||||
tag: v9.0.0@sha256:d0825ea55a94b45cf7393aec881dbf1a9bf5360c75b19b3a27efd917f2580f25
|
||||
|
||||
controller:
|
||||
# -- Set the controller type.
|
||||
|
||||
104
charts/enterprise/blocky/CHANGELOG.md
Normal file
@@ -0,0 +1,104 @@
|
||||
# Changelog
|
||||
|
||||
|
||||
|
||||
## [blocky-1.0.4](https://github.com/truecharts/charts/compare/blocky-1.0.3...blocky-1.0.4) (2022-09-25)
|
||||
|
||||
### Chore
|
||||
|
||||
- Auto-update chart README [skip ci]
|
||||
|
||||
### Fix
|
||||
|
||||
- update redis
|
||||
|
||||
|
||||
|
||||
|
||||
## [blocky-1.0.3](https://github.com/truecharts/charts/compare/blocky-1.0.2...blocky-1.0.3) (2022-09-25)
|
||||
|
||||
### Chore
|
||||
|
||||
- Auto-update chart README [skip ci]
|
||||
|
||||
### Fix
|
||||
|
||||
- use new common SA handler
|
||||
|
||||
|
||||
|
||||
|
||||
## [blocky-1.0.2](https://github.com/truecharts/charts/compare/blocky-1.0.1...blocky-1.0.2) (2022-09-25)
|
||||
|
||||
### Chore
|
||||
|
||||
- Auto-update chart README [skip ci]
|
||||
|
||||
### Fix
|
||||
|
||||
- disable probes until next release ([#3886](https://github.com/truecharts/charts/issues/3886))
|
||||
|
||||
|
||||
|
||||
|
||||
## [blocky-1.0.1](https://github.com/truecharts/charts/compare/blocky-1.0.0...blocky-1.0.1) (2022-09-25)
|
||||
|
||||
### Chore
|
||||
|
||||
- Auto-update chart README [skip ci]
|
||||
|
||||
### Fix
|
||||
|
||||
- set defaults to some durations ([#3885](https://github.com/truecharts/charts/issues/3885))
|
||||
|
||||
|
||||
|
||||
|
||||
## [blocky-1.0.0](https://github.com/truecharts/charts/compare/blocky-0.0.4...blocky-1.0.0) (2022-09-24)
|
||||
|
||||
### Chore
|
||||
|
||||
- move blocky to enterprise ([#3875](https://github.com/truecharts/charts/issues/3875))
|
||||
|
||||
|
||||
|
||||
|
||||
## [blocky-0.0.4](https://github.com/truecharts/charts/compare/blocky-0.0.3...blocky-0.0.4) (2022-09-24)
|
||||
|
||||
### Chore
|
||||
|
||||
- Auto-update chart README [skip ci]
|
||||
|
||||
### Fix
|
||||
|
||||
- Finish up UI ([#3866](https://github.com/truecharts/charts/issues/3866))
|
||||
|
||||
|
||||
|
||||
|
||||
## [blocky-0.0.3](https://github.com/truecharts/charts/compare/blocky-0.0.2...blocky-0.0.3) (2022-09-24)
|
||||
|
||||
### Chore
|
||||
|
||||
- Auto-update chart README [skip ci]
|
||||
- update docker general non-major ([#3860](https://github.com/truecharts/charts/issues/3860))
|
||||
|
||||
|
||||
|
||||
|
||||
## [blocky-0.0.2](https://github.com/truecharts/charts/compare/blocky-0.0.1...blocky-0.0.2) (2022-09-23)
|
||||
|
||||
### Chore
|
||||
|
||||
- Auto-update chart README [skip ci]
|
||||
- Auto-update chart README [skip ci]
|
||||
- update docker general non-major ([#3850](https://github.com/truecharts/charts/issues/3850))
|
||||
|
||||
|
||||
|
||||
|
||||
## [blocky-0.0.1]blocky-0.0.1 (2022-09-22)
|
||||
|
||||
### Feat
|
||||
|
||||
- add blocky ([#3735](https://github.com/truecharts/charts/issues/3735))
|
||||
@@ -1,15 +1,15 @@
|
||||
apiVersion: v2
|
||||
appVersion: "elopment"
|
||||
appVersion: "0.19"
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: https://library-charts.truecharts.org
|
||||
version: 10.6.0
|
||||
version: 10.6.1
|
||||
- condition: redis.enabled
|
||||
name: redis
|
||||
repository: https://charts.truecharts.org
|
||||
version: 3.0.67
|
||||
description: Blocky is a DNS proxy and ad-blocker for the local network written in Go
|
||||
home: https://truecharts.org/docs/charts/incubator/blocky
|
||||
version: 3.0.84
|
||||
description: Blocky is a DNS proxy, DNS enhancer and ad-blocker for the local network written in Go
|
||||
home: https://truecharts.org/docs/charts/enterprise/blocky
|
||||
icon: https://truecharts.org/img/hotlink-ok/chart-icons/blocky.png
|
||||
keywords:
|
||||
- dns
|
||||
@@ -21,12 +21,12 @@ maintainers:
|
||||
url: https://truecharts.org
|
||||
name: blocky
|
||||
sources:
|
||||
- https://github.com/truecharts/charts/tree/master/charts/incubator/blocky
|
||||
- https://github.com/truecharts/charts/tree/master/charts/enterprise/blocky
|
||||
- https://0xerr0r.github.io/blocky/
|
||||
- https://github.com/0xERR0R/blocky
|
||||
- https://github.com/Mozart409/blocky-frontend
|
||||
- https://hub.docker.com/r/spx01/blocky
|
||||
version: 0.0.4
|
||||
version: 1.0.5
|
||||
annotations:
|
||||
truecharts.org/catagories: |
|
||||
- network
|
||||
@@ -1,17 +1,17 @@
|
||||
# blocky
|
||||
|
||||
Blocky is a DNS proxy and ad-blocker for the local network written in Go
|
||||
Blocky is a DNS proxy, DNS enhancer and ad-blocker for the local network written in Go
|
||||
|
||||
TrueCharts can be installed as both *normal* Helm Charts or as Apps on TrueNAS SCALE.
|
||||
|
||||
This readme is just an automatically generated general guide on installing our Helm Charts and Apps.
|
||||
For more information, please click here: [blocky](https://truecharts.org/docs/charts/incubator/blocky)
|
||||
For more information, please click here: [blocky](https://truecharts.org/docs/charts/enterprise/blocky)
|
||||
|
||||
**This chart is not maintained by the upstream project and any issues with the chart should be raised [here](https://github.com/truecharts/charts/issues/new/choose)**
|
||||
|
||||
## Source Code
|
||||
|
||||
* <https://github.com/truecharts/charts/tree/master/charts/incubator/blocky>
|
||||
* <https://github.com/truecharts/charts/tree/master/charts/enterprise/blocky>
|
||||
* <https://0xerr0r.github.io/blocky/>
|
||||
* <https://github.com/0xERR0R/blocky>
|
||||
* <https://github.com/Mozart409/blocky-frontend>
|
||||
@@ -25,8 +25,8 @@ Kubernetes: `>=1.16.0-0`
|
||||
|
||||
| Repository | Name | Version |
|
||||
|------------|------|---------|
|
||||
| https://charts.truecharts.org | redis | 3.0.67 |
|
||||
| https://library-charts.truecharts.org | common | 10.5.7 |
|
||||
| https://charts.truecharts.org | redis | 3.0.83 |
|
||||
| https://library-charts.truecharts.org | common | 10.6.1 |
|
||||
|
||||
## Installing the Chart
|
||||
|
||||
|
Before Width: | Height: | Size: 39 KiB After Width: | Height: | Size: 39 KiB |
@@ -258,12 +258,12 @@ questions:
|
||||
label: Min Time
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
default: 5m
|
||||
- variable: maxTime
|
||||
label: Max Time
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
default: 30m
|
||||
- variable: maxItemsCount
|
||||
label: Max Items Count
|
||||
schema:
|
||||
@@ -10,7 +10,7 @@ metadata:
|
||||
labels:
|
||||
{{- include "tc.common.labels" . | nindent 4 }}
|
||||
data:
|
||||
tc-config.yaml: |
|
||||
config.yml: |
|
||||
{{ $config | toYaml | indent 4 }}
|
||||
{{- end -}}
|
||||
|
||||
@@ -7,8 +7,8 @@
|
||||
{{- define "blocky.configmap.mount" -}}
|
||||
enabled: true
|
||||
type: custom
|
||||
mountPath: /app/config/tc-config.yaml
|
||||
subPath: tc-config.yaml
|
||||
mountPath: /app/config.yml
|
||||
subPath: config.yml
|
||||
readOnly: true
|
||||
volumeSpec:
|
||||
configMap:
|
||||
@@ -1,8 +1,8 @@
|
||||
image:
|
||||
repository: spx01/blocky
|
||||
tag: development@sha256:ddb35986cbc924de11cd37ccf625ff6bd0896fad456e57ee9c0bd67bd034770e
|
||||
# repository: tccr.io/truecharts/blocky
|
||||
# tag: v0.19@sha256:77a474542f12f480deca33ff0a6375846918b86988c13f858620839d8818ca84
|
||||
# repository: spx01/blocky
|
||||
# tag: development@sha256:ddb35986cbc924de11cd37ccf625ff6bd0896fad456e57ee9c0bd67bd034770e
|
||||
repository: tccr.io/truecharts/blocky
|
||||
tag: v0.19@sha256:77a474542f12f480deca33ff0a6375846918b86988c13f858620839d8818ca84
|
||||
pullPolicy: IfNotPresent
|
||||
|
||||
WebUIImage:
|
||||
@@ -31,36 +31,44 @@ blockyConfig: {}
|
||||
# default:
|
||||
# - 1.1.1.1
|
||||
|
||||
env:
|
||||
BLOCKY_CONFIG_FILE: "/app/config/"
|
||||
|
||||
blocky:
|
||||
enableWebUI: true
|
||||
enablePrometheus: true
|
||||
|
||||
probes:
|
||||
liveness:
|
||||
enabled:
|
||||
custom: true
|
||||
spec:
|
||||
exec:
|
||||
command:
|
||||
- /app/blocky
|
||||
- healthcheck
|
||||
enabled: false
|
||||
# TODO: Enable after v0.20 is released.
|
||||
# Current version does not include the healthcheck command
|
||||
# enabled: true
|
||||
# custom: true
|
||||
# spec:
|
||||
# exec:
|
||||
# command:
|
||||
# - /app/blocky
|
||||
# - healthcheck
|
||||
readiness:
|
||||
custom: true
|
||||
spec:
|
||||
exec:
|
||||
command:
|
||||
- /app/blocky
|
||||
- healthcheck
|
||||
enabled: false
|
||||
# TODO: Enable after v0.20 is released.
|
||||
# Current version does not include the healthcheck command
|
||||
# enabled: true
|
||||
# custom: true
|
||||
# spec:
|
||||
# exec:
|
||||
# command:
|
||||
# - /app/blocky
|
||||
# - healthcheck
|
||||
startup:
|
||||
custom: true
|
||||
spec:
|
||||
exec:
|
||||
command:
|
||||
- /app/blocky
|
||||
- healthcheck
|
||||
enabled: false
|
||||
# TODO: Enable after v0.20 is released.
|
||||
# Current version does not include the healthcheck command
|
||||
# enabled: true
|
||||
# custom: true
|
||||
# spec:
|
||||
# exec:
|
||||
# command:
|
||||
# - /app/blocky
|
||||
# - healthcheck
|
||||
|
||||
service:
|
||||
main:
|
||||
@@ -1,29 +0,0 @@
|
||||
apiVersion: v2
|
||||
appVersion: "latest"
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: https://library-charts.truecharts.org
|
||||
version: 10.5.9
|
||||
deprecated: false
|
||||
description: Easy platform to combine all your social links
|
||||
home: https://truecharts.org/docs/charts/stable/littlelink
|
||||
icon: https://truecharts.org/img/hotlink-ok/chart-icons/littlelink.png
|
||||
keywords:
|
||||
- littlelink
|
||||
kubeVersion: ">=1.16.0-0"
|
||||
maintainers:
|
||||
- email: info@truecharts.org
|
||||
name: TrueCharts
|
||||
url: https://truecharts.org
|
||||
name: littlelink
|
||||
sources:
|
||||
- https://github.com/truecharts/charts/tree/master/charts/stable/littlelink
|
||||
- https://github.com/techno-tim/littlelink-server
|
||||
- https://github.com/sethcottle/littlelink
|
||||
type: application
|
||||
version: 6.0.62
|
||||
annotations:
|
||||
truecharts.org/catagories: |
|
||||
- social
|
||||
truecharts.org/SCALE-support: "true"
|
||||
truecharts.org/grade: U
|
||||
@@ -1 +0,0 @@
|
||||
|
||||
|
Before Width: | Height: | Size: 4.9 KiB |
@@ -1,430 +0,0 @@
|
||||
# Include{groups}
|
||||
portals:
|
||||
open:
|
||||
# Include{portalLink}
|
||||
questions:
|
||||
# Include{global}
|
||||
# Include{controller}
|
||||
# Include{controllerDeployment}
|
||||
# Include{replicas}
|
||||
# Include{replica1}
|
||||
# Include{strategy}
|
||||
# Include{recreate}
|
||||
# Include{controllerExpert}
|
||||
# Include{controllerExpertExtraArgs}
|
||||
# Include{containerConfig}
|
||||
- variable: littlelink
|
||||
label: ""
|
||||
group: "App Configuration"
|
||||
schema:
|
||||
additional_attrs: true
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: meta_title
|
||||
label: "meta title"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: meta_description
|
||||
label: "meta description"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: meta_author
|
||||
label: "meta_author"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: lang
|
||||
label: "lang"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: meta_index_status
|
||||
label: "meta_index_status"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: ga_tracking_id
|
||||
label: "ga_tracking_id"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: theme
|
||||
label: "theme"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: favicon_url
|
||||
label: "favicon_url"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: avatar_url
|
||||
label: "avatar_url"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: avatar_2x_url
|
||||
label: "avatar_2x_url"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: avatar_alt
|
||||
label: "avatar_alt"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: name
|
||||
label: "name"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: bio
|
||||
label: "bio"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: github
|
||||
label: "github"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: twitter
|
||||
label: "twitter"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: instagram
|
||||
label: "instagram"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: youtube
|
||||
label: "youtube"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: twitch
|
||||
label: "twitch"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: discord
|
||||
label: "discord"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: tiktok
|
||||
label: "tiktok"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: kit
|
||||
label: "kit"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: facebook
|
||||
label: "facebook"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: facebook_messenger
|
||||
label: "facebook_messenger"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: linked_in
|
||||
label: "linked_in"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: product_hunt
|
||||
label: "product_hunt"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: snapchat
|
||||
label: "snapchat"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: spotify
|
||||
label: "spotify"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: reddit
|
||||
label: "reddit"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: medium
|
||||
label: "medium"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: pinterest
|
||||
label: "pinterest"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: email
|
||||
label: "email"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: email_text
|
||||
label: "email_text"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: email_alt
|
||||
label: "email_alt"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: email_alt_text
|
||||
label: "email_alt_text"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: sound_cloud
|
||||
label: "sound_cloud"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: figma
|
||||
label: "figma"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: telegram
|
||||
label: "telegram"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: tumblr
|
||||
label: "tumblr"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: steam
|
||||
label: "steam"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: vimeo
|
||||
label: "vimeo"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: wordpress
|
||||
label: "wordpressp"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: goodreads
|
||||
label: "goodreads"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: skoob
|
||||
label: "skoob"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: letterboxd
|
||||
label: "letterboxd"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: mastodon
|
||||
label: "mastodon"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: micro_blog
|
||||
label: "micro_blog"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: whatsapp
|
||||
label: "whatsapp"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: strava
|
||||
label: "strava"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: buymeacoffee
|
||||
label: "buymeacoffee"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: gitlab
|
||||
label: "gitlab"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: patreon
|
||||
label: "patreon"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: devto
|
||||
label: "devto"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: umami_website_id
|
||||
label: "umami_website_id"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: umami_app_url
|
||||
label: "umami_app_url"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: paypal
|
||||
label: "paypal"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: slack
|
||||
label: "slack"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: lastfm
|
||||
label: "lastfm"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: untappd
|
||||
label: "untappd"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: stackoverflow
|
||||
label: "stackoverflow"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: gitea
|
||||
label: "gitea"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: polywork
|
||||
label: "polywork"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: signal
|
||||
label: "signal"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: footer
|
||||
label: "footer"
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
# Include{serviceRoot}
|
||||
- variable: main
|
||||
label: "Main Service"
|
||||
description: "The Primary service on which the healthcheck runs, often the webUI"
|
||||
schema:
|
||||
additional_attrs: true
|
||||
type: dict
|
||||
attrs:
|
||||
# Include{serviceSelector}
|
||||
- variable: main
|
||||
label: "Main Service Port Configuration"
|
||||
schema:
|
||||
additional_attrs: true
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: port
|
||||
label: "Port"
|
||||
description: "This port exposes the container port on the service"
|
||||
schema:
|
||||
type: int
|
||||
default: 10040
|
||||
required: true
|
||||
# Include{advancedPortHTTP}
|
||||
- variable: targetPort
|
||||
label: "Target Port"
|
||||
description: "The internal(!) port on the container the Application runs on"
|
||||
schema:
|
||||
type: int
|
||||
default: 3000
|
||||
# Include{serviceExpertRoot}
|
||||
default: false
|
||||
# Include{serviceExpert}
|
||||
# Include{serviceList}
|
||||
# Include{persistenceList}
|
||||
# Include{ingressRoot}
|
||||
- variable: main
|
||||
label: "Main Ingress"
|
||||
schema:
|
||||
additional_attrs: true
|
||||
type: dict
|
||||
attrs:
|
||||
# Include{ingressDefault}
|
||||
# Include{ingressTLS}
|
||||
# Include{ingressTraefik}
|
||||
# Include{ingressExpert}
|
||||
# Include{ingressList}
|
||||
# Include{security}
|
||||
# Include{securityContextAdvancedRoot}
|
||||
- variable: privileged
|
||||
label: "Privileged mode"
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
- variable: readOnlyRootFilesystem
|
||||
label: "ReadOnly Root Filesystem"
|
||||
schema:
|
||||
type: boolean
|
||||
default: true
|
||||
- variable: allowPrivilegeEscalation
|
||||
label: "Allow Privilege Escalation"
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
- variable: runAsNonRoot
|
||||
label: "runAsNonRoot"
|
||||
schema:
|
||||
type: boolean
|
||||
default: true
|
||||
# Include{securityContextAdvanced}
|
||||
# Include{podSecurityContextRoot}
|
||||
- variable: runAsUser
|
||||
label: "runAsUser"
|
||||
description: "The UserID of the user running the application"
|
||||
schema:
|
||||
type: int
|
||||
default: 568
|
||||
- variable: runAsGroup
|
||||
label: "runAsGroup"
|
||||
description: "The groupID this App of the user running the application"
|
||||
schema:
|
||||
type: int
|
||||
default: 568
|
||||
- variable: fsGroup
|
||||
label: "fsGroup"
|
||||
description: "The group that should own ALL storage."
|
||||
schema:
|
||||
type: int
|
||||
default: 568
|
||||
# Include{podSecurityContextAdvanced}
|
||||
# Include{resources}
|
||||
# Include{advanced}
|
||||
# Include{addons}
|
||||
# Include{documentation}
|
||||
@@ -1,199 +0,0 @@
|
||||
{{/* Define the configmap */}}
|
||||
{{- define "littlelink.configmap" -}}
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: ConfigMap
|
||||
metadata:
|
||||
name: littlelinkconfig
|
||||
data:
|
||||
{{- if .Values.littlelink.meta_title }}
|
||||
META_TILE: {{ .Values.littlelink.meta_title | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.meta_description }}
|
||||
META_DESCRIPTION: {{ .Values.littlelink.meta_description | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.meta_author }}
|
||||
META_AUTHOR: {{ .Values.littlelink.meta_author | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.lang }}
|
||||
LANG: {{ .Values.littlelink.lang | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.meta_index_status }}
|
||||
META_INDEX_STATUS: {{ .Values.littlelink.meta_index_status | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.ga_tracking_id }}
|
||||
GA_TRACKING_ID: {{ .Values.littlelink.ga_tracking_id | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.theme }}
|
||||
THEME: {{ .Values.littlelink.theme | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.favicon_url }}
|
||||
FAVICON_URL: {{ .Values.littlelink.favicon_url | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.avatar_url }}
|
||||
AVATAR_URL: {{ .Values.littlelink.avatar_url | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.avatar_2x_url }}
|
||||
AVATAR_2X_URL: {{ .Values.littlelink.avatar_2x_url | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.avatar_alt }}
|
||||
AVATAR_ALT: {{ .Values.littlelink.avatar_alt | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.name }}
|
||||
NAME: {{ .Values.littlelink.name | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.bio }}
|
||||
BIO: {{ .Values.littlelink.bio | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.github }}
|
||||
GITHUB: {{ .Values.littlelink.github | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.twitter }}
|
||||
TWITTER: {{ .Values.littlelink.twitter | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.instagram }}
|
||||
INSTAGRAM: {{ .Values.littlelink.instagram | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.youtube }}
|
||||
YOUTUBE: {{ .Values.littlelink.youtube | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.twitch }}
|
||||
TWITCH: {{ .Values.littlelink.twitch | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.discord }}
|
||||
DISCORD: {{ .Values.littlelink.discord | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.tiktok }}
|
||||
TIKTOK: {{ .Values.littlelink.tiktok | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.kit }}
|
||||
KIT: {{ .Values.littlelink.kit | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.facebook }}
|
||||
FACEBOOK: {{ .Values.littlelink.facebook | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.facebook_messenger }}
|
||||
FACEBOOK_MESSENGER: {{ .Values.littlelink.facebook_messenger | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.linked_in }}
|
||||
LINKED_IN: {{ .Values.littlelink.linked_in | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.product_hunt }}
|
||||
PRODUCT_HUNT: {{ .Values.littlelink.product_hunt | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.snapchat }}
|
||||
SNAPCHAT: {{ .Values.littlelink.snapchat | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.spotify }}
|
||||
SPOTIFY: {{ .Values.littlelink.spotify | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.reddit }}
|
||||
REDDIT: {{ .Values.littlelink.reddit | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.medium }}
|
||||
MEDIUM: {{ .Values.littlelink.medium | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.pinterest }}
|
||||
PINTEREST: {{ .Values.littlelink.pinterest | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.email }}
|
||||
EMAIL: {{ .Values.littlelink.email | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.email_text }}
|
||||
EMAIL_TEXT: {{ .Values.littlelink.email_text | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.email_alt }}
|
||||
EMAIL_ALT: {{ .Values.littlelink.email_alt | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.email_alt_text }}
|
||||
EMAIL_ALT_TEXT: {{ .Values.littlelink.email_alt_text | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.sound_cloud }}
|
||||
SOUND_CLOUD: {{ .Values.littlelink.sound_cloud | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.figma }}
|
||||
FIGMA: {{ .Values.littlelink.figma | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.telegram }}
|
||||
TELEGRAM: {{ .Values.littlelink.telegram | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.tumblr }}
|
||||
TUMBLR: {{ .Values.littlelink.tumblr | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.steam }}
|
||||
STEAM: {{ .Values.littlelink.steam | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.vimeo }}
|
||||
VIMEO: {{ .Values.littlelink.vimeo | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.wordpress }}
|
||||
WORDPRESS: {{ .Values.littlelink.wordpress | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.goodreads }}
|
||||
GOODREADS: {{ .Values.littlelink.goodreads | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.skoob }}
|
||||
SKOOB: {{ .Values.littlelink.skoob | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.letterboxd }}
|
||||
LETTERBOXD: {{ .Values.littlelink.letterboxd | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.mastodon }}
|
||||
MASTODON: {{ .Values.littlelink.mastodon | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.micro_blog }}
|
||||
MICRO_BLOG: {{ .Values.littlelink.micro_blog | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.whatsapp }}
|
||||
WHATSAPP: {{ .Values.littlelink.whatsapp | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.strava }}
|
||||
STRAVA: {{ .Values.littlelink.strava | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.buymeacoffee }}
|
||||
BUYMEACOFFEE: {{ .Values.littlelink.buymeacoffee | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.gitlab }}
|
||||
GITLAB: {{ .Values.littlelink.gitlab | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.patreon }}
|
||||
PATREON: {{ .Values.littlelink.patreon | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.devto }}
|
||||
DEVTO: {{ .Values.littlelink.devto | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.umami_website_id }}
|
||||
UMAMI_WEBSITE_ID: {{ .Values.littlelink.umami_website_id | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.umami_app_url }}
|
||||
UMAMI_APP_URL: {{ .Values.littlelink.umami_app_url | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.paypal }}
|
||||
PAYPAL: {{ .Values.littlelink.paypal | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.slack }}
|
||||
SLACK: {{ .Values.littlelink.slack | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.lastfm }}
|
||||
LASTFM: {{ .Values.littlelink.lastfm | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.untappd }}
|
||||
UNTAPPD: {{ .Values.littlelink.untappd | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.stackoverflow }}
|
||||
STACKOVERFLOW: {{ .Values.littlelink.stackoverflow | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.gitea }}
|
||||
GITEA: {{ .Values.littlelink.gitea | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.polywork }}
|
||||
POLYWORK: {{ .Values.littlelink.polywork | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.signal }}
|
||||
SIGNAL: {{ .Values.littlelink.signal | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.littlelink.footer }}
|
||||
FOOTER: {{ .Values.littlelink.footer | quote }}
|
||||
{{- end }}
|
||||
|
||||
{{- end -}}
|
||||
@@ -1,8 +0,0 @@
|
||||
{{/* Make sure all variables are set properly */}}
|
||||
{{- include "tc.common.loader.init" . }}
|
||||
|
||||
{{/* Render the templates */}}
|
||||
{{ include "tc.common.loader.apply" . }}
|
||||
|
||||
{{/* Render configmap for littlelink */}}
|
||||
{{- include "littlelink.configmap" . }}
|
||||
@@ -1,39 +0,0 @@
|
||||
image:
|
||||
repository: tccr.io/truecharts/littlelink-server
|
||||
pullPolicy: IfNotPresent
|
||||
tag: latest@sha256:d0d935132991a5ca528169dc5bfc02846e2ada782d55dddb12b61d1ab89383e2
|
||||
|
||||
service:
|
||||
main:
|
||||
ports:
|
||||
main:
|
||||
port: 10040
|
||||
targetPort: 3000
|
||||
|
||||
envFrom:
|
||||
- configMapRef:
|
||||
name: littlelinkconfig
|
||||
|
||||
littlelink:
|
||||
meta_title: "techno tim"
|
||||
meta_description: "techno tim link page"
|
||||
meta_author: "techno tim"
|
||||
theme: "dark"
|
||||
favicon_url: "https://pbs.twimg.com/profile_images/1286144221217316864/qiaskopb_200x200.jpg"
|
||||
avatar_url: "https://pbs.twimg.com/profile_images/1286144221217316864/qiaskopb_200x200.jpg"
|
||||
avatar_2x_url: "https://pbs.twimg.com/profile_images/1286144221217316864/qiaskopb_400x400.jpg"
|
||||
avatar_alt: "techno tim profile pic"
|
||||
name: "technotim"
|
||||
bio: "hey! just a place where you can connect with me!"
|
||||
github: "https://github.com/timothystewart6"
|
||||
twitter: "https://twitter.com/technotimlive"
|
||||
instagram: "https://www.instagram.com/techno.tim"
|
||||
youtube: "https://www.youtube.com/channel/ucok-ghyjcwznj3br4oxwh0a"
|
||||
twitch: "https://www.twitch.tv/technotim/"
|
||||
discord: "https://discord.gg/djkexrj"
|
||||
tiktok: "https://www.tiktok.com/@technotim"
|
||||
kit: "https://kit.co/technotim"
|
||||
footer: "thanks for stopping by!"
|
||||
|
||||
portal:
|
||||
enabled: true
|
||||
@@ -10,7 +10,7 @@ keywords:
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: https://library-charts.truecharts.org
|
||||
version: 10.5.10
|
||||
version: 10.6.1
|
||||
- name: metallb
|
||||
repository: https://metallb.github.io/metallb
|
||||
version: 0.13.5
|
||||
@@ -25,7 +25,7 @@ sources:
|
||||
- https://github.com/metallb/metallb
|
||||
- https://metallb.universe.tf
|
||||
type: application
|
||||
version: 4.0.11
|
||||
version: 4.0.12
|
||||
annotations:
|
||||
truecharts.org/catagories: |
|
||||
- core
|
||||
|
||||
@@ -1,45 +0,0 @@
|
||||
apiVersion: v2
|
||||
appVersion: "24.0.5"
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: https://library-charts.truecharts.org
|
||||
version: 10.5.9
|
||||
- condition: postgresql.enabled
|
||||
name: postgresql
|
||||
repository: https://charts.truecharts.org/
|
||||
version: 8.0.75
|
||||
- condition: collabora.enabled
|
||||
name: collabora-online
|
||||
repository: https://charts.truecharts.org/
|
||||
version: 12.1.39
|
||||
- condition: redis.enabled
|
||||
name: redis
|
||||
repository: https://charts.truecharts.org
|
||||
version: 3.0.71
|
||||
deprecated: false
|
||||
description: A private cloud server that puts the control and security of your own data back into your hands.
|
||||
home: https://truecharts.org/docs/charts/stable/nextcloud
|
||||
icon: https://truecharts.org/img/hotlink-ok/chart-icons/nextcloud.png
|
||||
keywords:
|
||||
- nextcloud
|
||||
- storage
|
||||
- http
|
||||
- web
|
||||
- php
|
||||
kubeVersion: ">=1.16.0-0"
|
||||
maintainers:
|
||||
- email: info@truecharts.org
|
||||
name: TrueCharts
|
||||
url: https://truecharts.org
|
||||
name: nextcloud
|
||||
sources:
|
||||
- https://github.com/truecharts/charts/tree/master/charts/stable/nextcloud
|
||||
- https://github.com/nextcloud/docker
|
||||
- https://github.com/nextcloud/helm
|
||||
type: application
|
||||
version: 15.3.12
|
||||
annotations:
|
||||
truecharts.org/catagories: |
|
||||
- cloud
|
||||
truecharts.org/SCALE-support: "true"
|
||||
truecharts.org/grade: U
|
||||
@@ -1 +0,0 @@
|
||||
|
||||
@@ -1,11 +0,0 @@
|
||||
env:
|
||||
# IP used for exposing nextcloud
|
||||
# Often the service or nodePort IP
|
||||
AccessIP: "127.0.0.1"
|
||||
|
||||
service:
|
||||
main:
|
||||
ports:
|
||||
main:
|
||||
port: 8080
|
||||
targetPort: 8080
|
||||
|
Before Width: | Height: | Size: 32 KiB |
|
Before Width: | Height: | Size: 24 KiB |
|
Before Width: | Height: | Size: 33 KiB |
|
Before Width: | Height: | Size: 24 KiB |
|
Before Width: | Height: | Size: 33 KiB |
@@ -1,100 +0,0 @@
|
||||
# Installation Guide
|
||||
|
||||
## Userdata Dataset
|
||||
|
||||
This is the optional location your Nextcloud userdata will be located
|
||||
|
||||
> You do NOT need to create a userdata dataset if you do not plan on using one. Nextcloud does not require one, instead you can rely on the PVC default
|
||||
|
||||
:::note
|
||||
|
||||
The `apps`:`apps` user:group is built into Truenas SCALE, it is the default user for most applications on Truenas SCALE. You do not have to create a separate user for each application. www-data is also included with TrueNAS SCALE by default with user/group ID `33`
|
||||
|
||||
When configuring your application you'll typically see user:group `568`, this is the UID for `apps` and its recommended not to change it.
|
||||
|
||||
:::
|
||||
|
||||
- You are **REQUIRED** to use the `www-data` group and setting the permissions exactly, If you have anything different, chances are it will not work
|
||||
- ACL's are known to cause problems with the Nextcloud `Userdata` folder, we advice you not to use them.
|
||||
- Below is an example on how the permissions window should like like when done with your userdata dataset. If it looks totally different, you're most likely using ACL's
|
||||
|
||||

|
||||
|
||||
## App Setup
|
||||
|
||||
For this application We used the `Nextcloud` provided by [TrueCharts](https://truecharts.org/manual/Quick-Start%20Guides/01-Adding-TrueCharts/).
|
||||
|
||||
- Available under the `stable` train
|
||||
|
||||

|
||||
|
||||
<br />
|
||||
|
||||
### Container
|
||||
|
||||
**Application Name**
|
||||
|
||||
```text
|
||||
nextcloud
|
||||
```
|
||||
|
||||
Name it whatever you want, We stick with the chart name for now
|
||||
|
||||
**NEXTCLOUD_ADMIN_USER (First Install Only)**
|
||||
|
||||
```text
|
||||
USERNAME
|
||||
```
|
||||
|
||||
> This is up to you
|
||||
|
||||
<br />
|
||||
|
||||
**NEXTCLOUD_ADMIN_PASSWORD (First Install Only)**
|
||||
|
||||
```text
|
||||
PASSWORD
|
||||
```
|
||||
|
||||
> This is up to you
|
||||
|
||||
<br />
|
||||
<br />
|
||||
|
||||
### Storage
|
||||
|
||||
> This is an optional step, if you did not create a separate dataset, you can skip this
|
||||
|
||||
1. Ensure you are under `UserData Storage`
|
||||
2. `Type of Storage` should be `Hostpath (simple)`
|
||||
3. `Hostpath` should be the path to the dataset you created
|
||||
|
||||

|
||||
|
||||
<br />
|
||||
<br />
|
||||
|
||||
### Ingress
|
||||
|
||||
> While it technically might be possible to run Nextcloud without Ingress, We only offer support for people using ingress. Running it without adds complications and is not in accordance with the Nextcloud Deployment guidelines
|
||||
|
||||
<br />
|
||||
|
||||
1. Configure Hosts > Add
|
||||
2. Configure Paths > Add
|
||||
3. Type your hostname under `HostName`
|
||||
|
||||

|
||||
|
||||
<br />
|
||||
|
||||
1. Configure TLS-Settings > Add
|
||||
2. Configure Certificate Hosts > Add
|
||||
3. Type your hostname under `HostName`
|
||||
4. Select your correct cert
|
||||
|
||||
> We do not add any middlewares, since Nextcloud has its own authentication, and adding middlewares breaks phone backups, since it has no way to authenticate through Authelia
|
||||
|
||||

|
||||
|
||||
<br />
|
||||
@@ -1,27 +0,0 @@
|
||||
# Important Notes
|
||||
|
||||
Nextcloud is a VERY picky Application and is VERY hard to support.
|
||||
The support staff on our Discord can help with the basic installation and
|
||||
getting Ingress to run with the chart, as that is that is the only recommended and supported installation method since 15.X.
|
||||
|
||||
The support staff will not help with upgrades that fail from an earlier version than 15.X, we've included a
|
||||
[migration guide](migration_guide.md) to help with this upgrade.
|
||||
|
||||
If you're having issues with the Nextcloud app/chart itself after basic installation we ask you not to file support
|
||||
requests on our Discord or Github, unless your issue is clearly caused by TrueCharts. It's, however, fine to ask in an, appropiate, other, non-support, channel!
|
||||
|
||||
While we consider the App layer "Stable", we simply cannot guarantee stability due to the nature of the Nextcloud Application inside the App.
|
||||
|
||||
## Installation Notes
|
||||
|
||||
Nextcloud generates it's `config.php` file on the first startup/installation. Therefore you have to set some values correctly on the first try.
|
||||
Otherwise you will have to either re-install the App or edit the `config.php` manually, with the latter being out of our support scope.
|
||||
The mentioned values are:
|
||||
|
||||
- User Data storage location, type (eg. PVC, hostPath).
|
||||
|
||||
Also Nextcloud creates an Admin user on the first startup/installation. Changing them later, will have no effect.
|
||||
The mentioned values are:
|
||||
|
||||
- NEXTCLOUD_ADMIN_USER
|
||||
- NEXTCLOUD_ADMIN_PASSWORD
|
||||
@@ -1,27 +0,0 @@
|
||||
# Migration Notes
|
||||
|
||||
This guide is provided as a resource to help taken from our Discord, but since 15.X is a breaking change
|
||||
there's no guarantees this will work, and you may have to install fresh
|
||||
|
||||
We want to highlight that this is considered a completely new App, hence the "breaking change".
|
||||
For the best stability we would advice people to reinstall (with the option to save the users data).
|
||||
|
||||
While we try to help people through migration and even have added some automated migration tooling,
|
||||
we cannot guarantee migration with breaking changes like these.
|
||||
|
||||
The correct troubleshooting steps would be:
|
||||
|
||||
- Remove any mention of "nextcloud_datadir" either in env-vars or config.php (if you manually added or altered it), we never supported this due to us expecting this change long beforehand
|
||||
- Remove any custom storage
|
||||
- Ensure config is set to "PVC"
|
||||
- Add `127.0.0.1` to the TRUSTED_PROXY setting like this: `172.16.0.0/16 127.0.0.1`
|
||||
- Stop and Start the old version to double-ensure the settings are applied
|
||||
- Apply the update
|
||||
- Wait for a good while (go grab lunch, eat it and drink a coffee afterwards)
|
||||
- Check if it worked out
|
||||
|
||||
If not:
|
||||
|
||||
- Manually ensure your nextcloud data structure is correct inside the App in both /var/www/html and /var/www/html/data
|
||||
- Double check if data directory is not set to anything other than /var/www/html/data (not set at-all is fine though)
|
||||
- Restart
|
||||
@@ -1,13 +0,0 @@
|
||||
# Input Validation
|
||||
|
||||
**`Default Phone Region`**
|
||||
Accepted formats are:
|
||||
|
||||
- 2x Capital Letters (eg. `US`)
|
||||
|
||||
Regex used to match this: `^[A-Z]{2}$`
|
||||
You can try live [here](https://regex101.com/r/qf1Lti/1)
|
||||
|
||||
---
|
||||
|
||||
_If you find a field that you think it needs validation, please open an issue on github_
|
||||
|
Before Width: | Height: | Size: 17 KiB |
@@ -1,346 +0,0 @@
|
||||
# Include{groups}
|
||||
portals:
|
||||
open:
|
||||
# Include{portalLink}
|
||||
questions:
|
||||
# Include{global}
|
||||
# Include{controller}
|
||||
# Include{controllerDeployment}
|
||||
# Include{replicas}
|
||||
# Include{replica1}
|
||||
# Include{strategy}
|
||||
# Include{recreate}
|
||||
# Include{controllerExpert}
|
||||
# Include{controllerExpertExtraArgs}
|
||||
- variable: secretEnv
|
||||
group: "Container Configuration"
|
||||
label: "Image Secrets"
|
||||
schema:
|
||||
additional_attrs: true
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: NEXTCLOUD_ADMIN_USER
|
||||
label: "NEXTCLOUD_ADMIN_USER (First Install Only)"
|
||||
description: "Sets the initial nextcloud's admin username, changing this variable after first launch will NOT change admin's username"
|
||||
schema:
|
||||
type: string
|
||||
required: true
|
||||
default: "REPLACETHIS"
|
||||
- variable: NEXTCLOUD_ADMIN_PASSWORD
|
||||
label: "NEXTCLOUD_ADMIN_PASSWORD (First Install Only)"
|
||||
description: "Sets the initial nextcloud's admin password, changing this variable after first launch will NOT change admin's password"
|
||||
schema:
|
||||
type: string
|
||||
private: true
|
||||
required: true
|
||||
default: "REPLACETHIS"
|
||||
- variable: env
|
||||
group: "Container Configuration"
|
||||
label: "Image Environment"
|
||||
schema:
|
||||
additional_attrs: true
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: TRUSTED_PROXIES
|
||||
label: "Trusted Proxies (Advanced)"
|
||||
description: "Sets nextcloud Trusted Proxies"
|
||||
schema:
|
||||
type: string
|
||||
default: "172.16.0.0/16 127.0.0.1"
|
||||
- variable: PHP_MEMORY_LIMIT
|
||||
label: "PHP_MEMORY_LIMIT"
|
||||
description: "Sets php memory_limit setting"
|
||||
schema:
|
||||
type: string
|
||||
default: "1G"
|
||||
- variable: PHP_UPLOAD_LIMIT
|
||||
label: "PHP_UPLOAD_LIMIT"
|
||||
description: "Sets php upload_max_filesize and post_max_size settings"
|
||||
schema:
|
||||
type: string
|
||||
default: "10G"
|
||||
- variable: AccessIP
|
||||
label: "Access IP"
|
||||
description: "Set to the IP-Address used to reach Nextcloud. Most often the Service or NodePort IP (Ensure this is correct!)"
|
||||
schema:
|
||||
type: string
|
||||
required: true
|
||||
$ref:
|
||||
- "definitions/nodeIP"
|
||||
- variable: nextcloud
|
||||
group: "Container Configuration"
|
||||
label: "Nextcloud Configuration"
|
||||
schema:
|
||||
additional_attrs: true
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: default_phone_region
|
||||
label: "Default Phone Region"
|
||||
description: "Sets the default phone region in ISO_3166-1 format (e.g. US). https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2#Officially_assigned_code_elements"
|
||||
schema:
|
||||
type: string
|
||||
valid_chars: '^[A-Z]{2}$'
|
||||
default: "US"
|
||||
- variable: imaginary
|
||||
group: "Container Configuration"
|
||||
label: "Preview Generation Configuration"
|
||||
schema:
|
||||
additional_attrs: true
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: preview_max_x
|
||||
label: "Preview Max X"
|
||||
description: "The maximum width, in pixels, of a preview."
|
||||
schema:
|
||||
type: int
|
||||
required: true
|
||||
default: 2048
|
||||
- variable: preview_max_y
|
||||
label: "Preview Max Y"
|
||||
description: "The maximum height, in pixels, of a preview."
|
||||
schema:
|
||||
type: int
|
||||
required: true
|
||||
default: 2048
|
||||
- variable: preview_max_memory
|
||||
label: "Preview Max Memory"
|
||||
description: "Max memory in MB for generating image previews."
|
||||
schema:
|
||||
type: int
|
||||
required: true
|
||||
default: 512
|
||||
- variable: preview_max_filesize_image
|
||||
label: "Preview Max Filesize Image"
|
||||
description: "Max file size in MB for generating image previews."
|
||||
schema:
|
||||
type: int
|
||||
required: true
|
||||
default: 150
|
||||
- variable: preview_png
|
||||
label: "Generate previews for PNG"
|
||||
schema:
|
||||
type: boolean
|
||||
default: true
|
||||
- variable: preview_jpeg
|
||||
label: "Generate previews for JPEG "
|
||||
schema:
|
||||
type: boolean
|
||||
default: true
|
||||
- variable: preview_gif
|
||||
label: "Generate previews for GIF"
|
||||
schema:
|
||||
type: boolean
|
||||
default: true
|
||||
- variable: preview_bmp
|
||||
label: "Generate previews for BMP"
|
||||
schema:
|
||||
type: boolean
|
||||
default: true
|
||||
- variable: preview_xbitmap
|
||||
label: "Generate previews for XBitmap"
|
||||
schema:
|
||||
type: boolean
|
||||
default: true
|
||||
- variable: preview_mp3
|
||||
label: "Generate previews for MP3"
|
||||
schema:
|
||||
type: boolean
|
||||
default: true
|
||||
- variable: preview_markdown
|
||||
label: "Generate previews for MarkDown"
|
||||
schema:
|
||||
type: boolean
|
||||
default: true
|
||||
- variable: preview_opendoc
|
||||
label: "Generate previews for OpenDocument"
|
||||
schema:
|
||||
type: boolean
|
||||
default: true
|
||||
- variable: preview_txt
|
||||
label: "Generate previews for TXT"
|
||||
schema:
|
||||
type: boolean
|
||||
default: true
|
||||
- variable: preview_krita
|
||||
label: "Generate previews for Krita"
|
||||
schema:
|
||||
type: boolean
|
||||
default: true
|
||||
- variable: preview_illustrator
|
||||
label: "Generate previews for Illustrator"
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
- variable: preview_heic
|
||||
label: "Generate previews for HEIC"
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
- variable: preview_movie
|
||||
label: "Generate previews for Movie"
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
- variable: preview_msoffice2003
|
||||
label: "Generate previews for MSOffice2003"
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
- variable: preview_msoffice2007
|
||||
label: "Generate previews for MSOffice2007"
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
- variable: preview_msofficedoc
|
||||
label: "Generate previews for MSOfficeDoc"
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
- variable: preview_pdf
|
||||
label: "Generate previews for PDF"
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
- variable: preview_photoshop
|
||||
label: "Generate previews for Photoshop"
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
- variable: preview_postscript
|
||||
label: "Generate previews for Postscript"
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
- variable: preview_staroffice
|
||||
label: "Generate previews for StarOffice"
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
- variable: preview_svg
|
||||
label: "Generate previews for SVG"
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
- variable: preview_tiff
|
||||
label: "Generate previews for TIFF"
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
- variable: preview_font
|
||||
label: "Generate previews for Font"
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
# Include{containerConfig}
|
||||
# Include{serviceRoot}
|
||||
- variable: main
|
||||
label: "Main Service"
|
||||
description: "The Primary service on which the healthcheck runs, often the webUI"
|
||||
schema:
|
||||
additional_attrs: true
|
||||
type: dict
|
||||
attrs:
|
||||
# Include{serviceSelector}
|
||||
- variable: main
|
||||
label: "Main Service Port Configuration"
|
||||
schema:
|
||||
additional_attrs: true
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: port
|
||||
label: "Port"
|
||||
description: "This port exposes the container port on the service"
|
||||
schema:
|
||||
type: int
|
||||
default: 10020
|
||||
required: true
|
||||
# Include{advancedPortHTTP}
|
||||
- variable: targetPort
|
||||
label: "Target Port"
|
||||
description: "The internal(!) port on the container the Application runs on"
|
||||
schema:
|
||||
type: int
|
||||
default: 8080
|
||||
# Include{serviceExpertRoot}
|
||||
default: false
|
||||
# Include{serviceExpert}
|
||||
# Include{serviceList}
|
||||
# Include{persistenceRoot}
|
||||
- variable: html
|
||||
label: "App html Storage"
|
||||
description: "Stores the Application html."
|
||||
schema:
|
||||
additional_attrs: true
|
||||
type: dict
|
||||
attrs:
|
||||
# Include{persistenceBasic}
|
||||
# Include{persistenceAdvanced}
|
||||
- variable: data
|
||||
label: "UserData Storage"
|
||||
description: "Stores the User Data."
|
||||
schema:
|
||||
additional_attrs: true
|
||||
type: dict
|
||||
attrs:
|
||||
# Include{persistenceBasic}
|
||||
# Include{persistenceAdvanced}
|
||||
# Include{persistenceList}
|
||||
# Include{ingressRoot}
|
||||
- variable: main
|
||||
label: "Main Ingress"
|
||||
schema:
|
||||
additional_attrs: true
|
||||
type: dict
|
||||
attrs:
|
||||
# Include{ingressDefault}
|
||||
# Include{ingressTLS}
|
||||
# Include{ingressTraefik}
|
||||
# Include{ingressExpert}
|
||||
# Include{ingressList}
|
||||
# Include{security}
|
||||
# Include{securityContextAdvancedRoot}
|
||||
- variable: privileged
|
||||
label: "Privileged mode"
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
- variable: readOnlyRootFilesystem
|
||||
label: "ReadOnly Root Filesystem"
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
- variable: allowPrivilegeEscalation
|
||||
label: "Allow Privilege Escalation"
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
- variable: runAsNonRoot
|
||||
label: "runAsNonRoot"
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
# Include{securityContextAdvanced}
|
||||
# Include{podSecurityContextRoot}
|
||||
- variable: runAsUser
|
||||
label: "runAsUser"
|
||||
description: "The UserID of the user running the application"
|
||||
schema:
|
||||
type: int
|
||||
default: 0
|
||||
- variable: runAsGroup
|
||||
label: "runAsGroup"
|
||||
description: "The groupID this App of the user running the application"
|
||||
schema:
|
||||
type: int
|
||||
default: 0
|
||||
- variable: fsGroup
|
||||
label: "fsGroup"
|
||||
description: "The group that should own ALL storage."
|
||||
schema:
|
||||
type: int
|
||||
default: 33
|
||||
# Include{podSecurityContextAdvanced}
|
||||
# Include{resources}
|
||||
# Include{advanced}
|
||||
# Include{addons}
|
||||
# Include{documentation}
|
||||
@@ -1,36 +0,0 @@
|
||||
{{/* Define the configmap */}}
|
||||
{{- define "nextcloud.configmap" -}}
|
||||
|
||||
{{- $hosts := "" }}
|
||||
{{- if .Values.ingress.main.enabled }}
|
||||
{{- range .Values.ingress }}
|
||||
{{- range $index, $host := .hosts }}
|
||||
{{- if $index }}
|
||||
{{ $hosts = ( printf "%v %v" $hosts $host.host ) }}
|
||||
{{- else }}
|
||||
{{ $hosts = ( printf "%s" $host.host ) }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
||||
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: ConfigMap
|
||||
metadata:
|
||||
name: nextcloudconfig
|
||||
data:
|
||||
{{- $aliasgroup1 := ( printf "http://%s" ( .Values.env.AccessIP | default ( printf "%v-%v" .Release.Name "nextcloud" ) ) ) }}
|
||||
{{- if .Values.ingress.main.enabled }}
|
||||
{{- with (first .Values.ingress.main.hosts) }}
|
||||
{{- $aliasgroup1 = ( printf "https://%s" .host ) }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
aliasgroup1: {{ $aliasgroup1 }}
|
||||
NEXTCLOUD_TRUSTED_DOMAINS: {{ ( printf "%v %v %v %v %v %v %v %v" "test.fakedomain.dns" "localhost" "127.0.0.1" ( printf "%v:%v" "127.0.0.1" .Values.service.main.ports.main.port ) ( .Values.env.AccessIP | default "localhost" ) ( printf "%v-%v" .Release.Name "nextcloud" ) ( printf "%v-%v" .Release.Name "nextcloud-backend" ) $hosts ) | quote }}
|
||||
{{- if .Values.ingress.main.enabled }}
|
||||
APACHE_DISABLE_REWRITE_IP: "1"
|
||||
{{- end }}
|
||||
|
||||
{{- end -}}
|
||||
@@ -1,64 +0,0 @@
|
||||
{{/* Define the cronjob */}}
|
||||
{{- define "nextcloud.cronjob" -}}
|
||||
{{- if .Values.cronjob.enabled -}}
|
||||
{{- $jobName := include "tc.common.names.fullname" . }}
|
||||
|
||||
---
|
||||
apiVersion: batch/v1
|
||||
kind: CronJob
|
||||
metadata:
|
||||
name: {{ printf "%s-cronjob" $jobName }}
|
||||
labels:
|
||||
{{- include "tc.common.labels" . | nindent 4 }}
|
||||
spec:
|
||||
schedule: "{{ .Values.cronjob.schedule }}"
|
||||
concurrencyPolicy: Forbid
|
||||
{{- with .Values.cronjob.failedJobsHistoryLimit }}
|
||||
failedJobsHistoryLimit: {{ . }}
|
||||
{{- end }}
|
||||
{{- with .Values.cronjob.successfulJobsHistoryLimit }}
|
||||
successfulJobsHistoryLimit: {{ . }}
|
||||
{{- end }}
|
||||
jobTemplate:
|
||||
metadata:
|
||||
spec:
|
||||
template:
|
||||
metadata:
|
||||
spec:
|
||||
restartPolicy: Never
|
||||
{{- with (include "tc.common.controller.volumes" . | trim) }}
|
||||
volumes:
|
||||
{{- nindent 12 . }}
|
||||
{{- end }}
|
||||
containers:
|
||||
- name: {{ .Chart.Name }}
|
||||
image: '{{ include "tc.common.images.selector" . }}'
|
||||
imagePullPolicy: {{ default .Values.image.pullPolicy }}
|
||||
command:
|
||||
- "/bin/sh"
|
||||
- "-c"
|
||||
- |
|
||||
/bin/bash <<'EOF'
|
||||
echo "running nextcloud cronjob..."
|
||||
php -f /var/www/html/cron.php
|
||||
echo "cronjob finished"
|
||||
{{- if .Values.cronjob.generatePreviews }}
|
||||
echo "Pre-generating Previews..."
|
||||
php /var/www/html/occ preview:pre-generate
|
||||
echo "Previews generated."
|
||||
{{- end }}
|
||||
EOF
|
||||
# Will mount configuration files as www-data (id: 33) by default for nextcloud
|
||||
{{- with (include "tc.common.controller.volumeMounts" . | trim) }}
|
||||
volumeMounts:
|
||||
{{ nindent 16 . }}
|
||||
{{- end }}
|
||||
securityContext:
|
||||
runAsUser: 33
|
||||
runAsGroup: 33
|
||||
readOnlyRootFilesystem: true
|
||||
runAsNonRoot: true
|
||||
resources:
|
||||
{{ toYaml .Values.resources | indent 16 }}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
@@ -1,164 +0,0 @@
|
||||
{{/* Define the hbp container */}}
|
||||
{{- define "nextcloud.hpb" -}}
|
||||
{{- $jobName := include "tc.common.names.fullname" . }}
|
||||
image: '{{ include "tc.common.images.selector" . }}'
|
||||
imagePullPolicy: '{{ .Values.image.pullPolicy }}'
|
||||
securityContext:
|
||||
runAsUser: 33
|
||||
runAsGroup: 33
|
||||
readOnlyRootFilesystem: true
|
||||
runAsNonRoot: true
|
||||
{{- with (include "tc.common.controller.volumeMounts" . | trim) }}
|
||||
volumeMounts:
|
||||
{{ nindent 2 . }}
|
||||
{{- end }}
|
||||
ports:
|
||||
- containerPort: 7867
|
||||
readinessProbe:
|
||||
httpGet:
|
||||
path: /push/test/cookie
|
||||
port: 7867
|
||||
httpHeaders:
|
||||
- name: Host
|
||||
value: "test.fakedomain.dns"
|
||||
initialDelaySeconds: {{ .Values.probes.readiness.spec.initialDelaySeconds }}
|
||||
periodSeconds: {{ .Values.probes.readiness.spec.periodSeconds }}
|
||||
timeoutSeconds: {{ .Values.probes.readiness.spec.timeoutSeconds }}
|
||||
failureThreshold: {{ .Values.probes.readiness.spec.failureThreshold }}
|
||||
livenessProbe:
|
||||
httpGet:
|
||||
path: /push/test/cookie
|
||||
port: 7867
|
||||
httpHeaders:
|
||||
- name: Host
|
||||
value: "test.fakedomain.dns"
|
||||
initialDelaySeconds: {{ .Values.probes.liveness.spec.initialDelaySeconds }}
|
||||
periodSeconds: {{ .Values.probes.liveness.spec.periodSeconds }}
|
||||
timeoutSeconds: {{ .Values.probes.liveness.spec.timeoutSeconds }}
|
||||
failureThreshold: {{ .Values.probes.liveness.spec.failureThreshold }}
|
||||
startupProbe:
|
||||
httpGet:
|
||||
path: /push/test/cookie
|
||||
port: 7867
|
||||
httpHeaders:
|
||||
- name: Host
|
||||
value: "test.fakedomain.dns"
|
||||
initialDelaySeconds: {{ .Values.probes.startup.spec.initialDelaySeconds }}
|
||||
periodSeconds: {{ .Values.probes.startup.spec.periodSeconds }}
|
||||
timeoutSeconds: {{ .Values.probes.startup.spec.timeoutSeconds }}
|
||||
failureThreshold: {{ .Values.probes.startup.spec.failureThreshold }}
|
||||
command:
|
||||
- "/bin/sh"
|
||||
- "-c"
|
||||
- |
|
||||
/bin/bash <<'EOF'
|
||||
set -m
|
||||
echo "Waiting for notify_push file to be available..."
|
||||
until [ -f /var/www/html/custom_apps/notify_push/bin/x86_64/notify_push ]
|
||||
do
|
||||
sleep 10
|
||||
echo "Notify_push app not found... waiting..."
|
||||
done
|
||||
echo "Waiting for Nextcloud to start..."
|
||||
until $(curl --output /dev/null --silent --head --fail -H "Host: test.fakedomain.dns" http://127.0.0.1:8080/status.php); do
|
||||
echo "Nextcloud not responding... waiting..."
|
||||
sleep 10
|
||||
done
|
||||
until $(curl --silent --fail -H "Host: test.fakedomain.dns" http://127.0.0.1:8080/status.php | jq --raw-output '.installed' | grep "true"); do
|
||||
echo "Nextcloud not installed... waiting..."
|
||||
sleep 10
|
||||
done
|
||||
echo "Nextcloud instance with Notify_push found... Launching High Performance Backend..."
|
||||
/var/www/html/custom_apps/notify_push/bin/x86_64/notify_push /var/www/html/config/config.php &
|
||||
|
||||
{{- $accessurl := ( printf "http://%v:%v" ( .Values.env.AccessIP | default ( printf "%v-%v" .Release.Name "nextcloud" ) ) .Values.service.main.ports.main.port ) }}
|
||||
{{- if .Values.ingress.main.enabled }}
|
||||
{{- with (first .Values.ingress.main.hosts) }}
|
||||
{{- $accessurl = ( printf "https://%s" .host ) }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
||||
echo "Configuring CLI url..."
|
||||
php /var/www/html/occ config:system:set overwrite.cli.url --value='{{ $accessurl }}/'
|
||||
|
||||
{{- if .Values.imaginary.enabled }}
|
||||
echo "Imaginary High Performance Previews enabled, enabling it on Nextcloud..."
|
||||
php /var/www/html/occ config:system:set preview_imaginary_url --value='http://127.0.0.1:9090'
|
||||
php /var/www/html/occ config:system:set preview_max_x --value='{{ .Values.imaginary.preview_max_x }}'
|
||||
php /var/www/html/occ config:system:set preview_max_y --value='{{ .Values.imaginary.preview_max_y }}'
|
||||
php /var/www/html/occ config:system:set preview_max_memory --value='{{ .Values.imaginary.preview_max_memory }}'
|
||||
php /var/www/html/occ config:system:set preview_max_filesize_image --value='{{ .Values.imaginary.preview_max_filesize_image }}'
|
||||
# Remove all preview providers and re-add only selected
|
||||
php /var/www/html/occ config:system:delete enabledPreviewProviders
|
||||
# Add imaginary always
|
||||
{{ $c := 0 }} # Initialize counter
|
||||
php /var/www/html/occ config:system:set enabledPreviewProviders {{ $c }} --value='OC\Preview\Imaginary'{{ $c = add1 $c }}
|
||||
{{ if .Values.imaginary.preview_png }}php /var/www/html/occ config:system:set enabledPreviewProviders {{ $c }} --value='OC\Preview\PNG'{{ $c = add1 $c }}{{ end }}
|
||||
{{ if .Values.imaginary.preview_jpeg }}php /var/www/html/occ config:system:set enabledPreviewProviders {{ $c }} --value='OC\Preview\JPEG'{{ $c = add1 $c }}{{ end }}
|
||||
{{ if .Values.imaginary.preview_gif }}php /var/www/html/occ config:system:set enabledPreviewProviders {{ $c }} --value='OC\Preview\GIF'{{ $c = add1 $c }}{{ end }}
|
||||
{{ if .Values.imaginary.preview_bmp }}php /var/www/html/occ config:system:set enabledPreviewProviders {{ $c }} --value='OC\Preview\BMP'{{ $c = add1 $c }}{{ end }}
|
||||
{{ if .Values.imaginary.preview_xbitmap }}php /var/www/html/occ config:system:set enabledPreviewProviders {{ $c }} --value='OC\Preview\XBitmap'{{ $c = add1 $c }}{{ end }}
|
||||
{{ if .Values.imaginary.preview_mp3 }}php /var/www/html/occ config:system:set enabledPreviewProviders {{ $c }} --value='OC\Preview\MP3'{{ $c = add1 $c }}{{ end }}
|
||||
{{ if .Values.imaginary.preview_markdown }}php /var/www/html/occ config:system:set enabledPreviewProviders {{ $c }} --value='OC\Preview\MarkDown'{{ $c = add1 $c }}{{ end }}
|
||||
{{ if .Values.imaginary.preview_opendoc }}php /var/www/html/occ config:system:set enabledPreviewProviders {{ $c }} --value='OC\Preview\OpenDocument'{{ $c = add1 $c }}{{ end }}
|
||||
{{ if .Values.imaginary.preview_txt }}php /var/www/html/occ config:system:set enabledPreviewProviders {{ $c }} --value='OC\Preview\TXT'{{ $c = add1 $c }}{{ end }}
|
||||
{{ if .Values.imaginary.preview_krita }}php /var/www/html/occ config:system:set enabledPreviewProviders {{ $c }} --value='OC\Preview\Krita'{{ $c = add1 $c }}{{ end }}
|
||||
{{ if .Values.imaginary.preview_illustrator }}php /var/www/html/occ config:system:set enabledPreviewProviders {{ $c }} --value='OC\Preview\Illustrator'{{ $c = add1 $c }}{{ end }}
|
||||
{{ if .Values.imaginary.preview_heic }}php /var/www/html/occ config:system:set enabledPreviewProviders {{ $c }} --value='OC\Preview\HEIC'{{ $c = add1 $c }}{{ end }}
|
||||
{{ if .Values.imaginary.preview_movie }}php /var/www/html/occ config:system:set enabledPreviewProviders {{ $c }} --value='OC\Preview\Movie'{{ $c = add1 $c }}{{ end }}
|
||||
{{ if .Values.imaginary.preview_msoffice2003 }}php /var/www/html/occ config:system:set enabledPreviewProviders {{ $c }} --value='OC\Preview\MSOffice2003'{{ $c = add1 $c }}{{ end }}
|
||||
{{ if .Values.imaginary.preview_msoffice2007 }}php /var/www/html/occ config:system:set enabledPreviewProviders {{ $c }} --value='OC\Preview\MSOffice2007'{{ $c = add1 $c }}{{ end }}
|
||||
{{ if .Values.imaginary.preview_msofficedoc }}php /var/www/html/occ config:system:set enabledPreviewProviders {{ $c }} --value='OC\Preview\MSOfficeDoc'{{ $c = add1 $c }}{{ end }}
|
||||
{{ if .Values.imaginary.preview_pdf }}php /var/www/html/occ config:system:set enabledPreviewProviders {{ $c }} --value='OC\Preview\PDF'{{ $c = add1 $c }}{{ end }}
|
||||
{{ if .Values.imaginary.preview_photoshop }}php /var/www/html/occ config:system:set enabledPreviewProviders {{ $c }} --value='OC\Preview\Photoshop'{{ $c = add1 $c }}{{ end }}
|
||||
{{ if .Values.imaginary.preview_postscript }}php /var/www/html/occ config:system:set enabledPreviewProviders {{ $c }} --value='OC\Preview\Postscript'{{ $c = add1 $c }}{{ end }}
|
||||
{{ if .Values.imaginary.preview_staroffice }}php /var/www/html/occ config:system:set enabledPreviewProviders {{ $c }} --value='OC\Preview\StarOffice'{{ $c = add1 $c }}{{ end }}
|
||||
{{ if .Values.imaginary.preview_svg }}php /var/www/html/occ config:system:set enabledPreviewProviders {{ $c }} --value='OC\Preview\SVG'{{ $c = add1 $c }}{{ end }}
|
||||
{{ if .Values.imaginary.preview_tiff }}php /var/www/html/occ config:system:set enabledPreviewProviders {{ $c }} --value='OC\Preview\TIFF'{{ $c = add1 $c }}{{ end }}
|
||||
{{ if .Values.imaginary.preview_font }}php /var/www/html/occ config:system:set enabledPreviewProviders {{ $c }} --value='OC\Preview\Font'{{ $c = add1 $c }}{{ end }}
|
||||
{{- end }}
|
||||
|
||||
# Set default phone region
|
||||
{{- with .Values.nextcloud.default_phone_region | upper }}
|
||||
php /var/www/html/occ config:system:set default_phone_region --value='{{ . }}'
|
||||
{{- end }}
|
||||
|
||||
echo "Configuring High Performance Backend for url: {{ $accessurl }}"
|
||||
php /var/www/html/occ config:app:set notify_push base_endpoint --value='{{ $accessurl }}/push'
|
||||
fg
|
||||
EOF
|
||||
env:
|
||||
- name: NEXTCLOUD_URL
|
||||
value: 'http://127.0.0.1:8080'
|
||||
- name: METRICS_PORT
|
||||
value: '7868'
|
||||
- name: TRUSTED_PROXIES
|
||||
value: "{{ .Values.env.TRUSTED_PROXIES }}"
|
||||
- name: POSTGRES_DB
|
||||
value: "{{ .Values.postgresql.postgresqlDatabase }}"
|
||||
- name: POSTGRES_USER
|
||||
value: "{{ .Values.postgresql.postgresqlUsername }}"
|
||||
- name: POSTGRES_PASSWORD
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: dbcreds
|
||||
key: postgresql-password
|
||||
- name: POSTGRES_HOST
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: dbcreds
|
||||
key: plainporthost
|
||||
- name: REDIS_HOST
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: rediscreds
|
||||
key: plainhost
|
||||
- name: REDIS_HOST_PASSWORD
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: rediscreds
|
||||
key: redis-password
|
||||
envFrom:
|
||||
- configMapRef:
|
||||
name: nextcloudconfig
|
||||
{{- end -}}
|
||||
@@ -1,40 +0,0 @@
|
||||
{{/* Define the imaginary container */}}
|
||||
{{- define "nextcloud.imaginary" -}}
|
||||
image: {{ .Values.imaginaryImage.repository }}:{{ .Values.imaginaryImage.tag }}
|
||||
imagePullPolicy: '{{ .Values.image.pullPolicy }}'
|
||||
securityContext:
|
||||
runAsUser: 33
|
||||
runAsGroup: 33
|
||||
readOnlyRootFilesystem: true
|
||||
runAsNonRoot: true
|
||||
ports:
|
||||
- containerPort: 9090
|
||||
args: ["-enable-url-source"]
|
||||
env:
|
||||
- name: 'PORT'
|
||||
value: '9090'
|
||||
readinessProbe:
|
||||
httpGet:
|
||||
path: /
|
||||
port: 9090
|
||||
initialDelaySeconds: {{ .Values.probes.readiness.spec.initialDelaySeconds }}
|
||||
periodSeconds: {{ .Values.probes.readiness.spec.periodSeconds }}
|
||||
timeoutSeconds: {{ .Values.probes.readiness.spec.timeoutSeconds }}
|
||||
failureThreshold: {{ .Values.probes.readiness.spec.failureThreshold }}
|
||||
livenessProbe:
|
||||
httpGet:
|
||||
path: /
|
||||
port: 9090
|
||||
initialDelaySeconds: {{ .Values.probes.liveness.spec.initialDelaySeconds }}
|
||||
periodSeconds: {{ .Values.probes.liveness.spec.periodSeconds }}
|
||||
timeoutSeconds: {{ .Values.probes.liveness.spec.timeoutSeconds }}
|
||||
failureThreshold: {{ .Values.probes.liveness.spec.failureThreshold }}
|
||||
startupProbe:
|
||||
httpGet:
|
||||
path: /
|
||||
port: 9090
|
||||
initialDelaySeconds: {{ .Values.probes.startup.spec.initialDelaySeconds }}
|
||||
periodSeconds: {{ .Values.probes.startup.spec.periodSeconds }}
|
||||
timeoutSeconds: {{ .Values.probes.startup.spec.timeoutSeconds }}
|
||||
failureThreshold: {{ .Values.probes.startup.spec.failureThreshold }}
|
||||
{{- end -}}
|
||||
@@ -1,54 +0,0 @@
|
||||
{{/* Define the nginx container */}}
|
||||
{{- define "nextcloud.nginx" -}}
|
||||
image: {{ .Values.nginxImage.repository }}:{{ .Values.nginxImage.tag }}
|
||||
imagePullPolicy: '{{ .Values.image.pullPolicy }}'
|
||||
securityContext:
|
||||
runAsUser: 33
|
||||
runAsGroup: 33
|
||||
readOnlyRootFilesystem: true
|
||||
runAsNonRoot: true
|
||||
{{- with (include "tc.common.controller.volumeMounts" . | trim) }}
|
||||
volumeMounts:
|
||||
{{ nindent 2 . }}
|
||||
{{- end }}
|
||||
- mountPath: /etc/nginx/nginx.conf
|
||||
name: nginx
|
||||
readOnly: true
|
||||
subPath: nginx.conf
|
||||
ports:
|
||||
- containerPort: 8080
|
||||
|
||||
readinessProbe:
|
||||
httpGet:
|
||||
path: /robots.txt
|
||||
port: 8080
|
||||
httpHeaders:
|
||||
- name: Host
|
||||
value: "test.fakedomain.dns"
|
||||
initialDelaySeconds: {{ .Values.probes.readiness.spec.initialDelaySeconds }}
|
||||
periodSeconds: {{ .Values.probes.readiness.spec.periodSeconds }}
|
||||
timeoutSeconds: {{ .Values.probes.readiness.spec.timeoutSeconds }}
|
||||
failureThreshold: {{ .Values.probes.readiness.spec.failureThreshold }}
|
||||
livenessProbe:
|
||||
httpGet:
|
||||
path: /robots.txt
|
||||
port: 8080
|
||||
httpHeaders:
|
||||
- name: Host
|
||||
value: "test.fakedomain.dns"
|
||||
initialDelaySeconds: {{ .Values.probes.liveness.spec.initialDelaySeconds }}
|
||||
periodSeconds: {{ .Values.probes.liveness.spec.periodSeconds }}
|
||||
timeoutSeconds: {{ .Values.probes.liveness.spec.timeoutSeconds }}
|
||||
failureThreshold: {{ .Values.probes.liveness.spec.failureThreshold }}
|
||||
startupProbe:
|
||||
httpGet:
|
||||
path: /robots.txt
|
||||
port: 8080
|
||||
httpHeaders:
|
||||
- name: Host
|
||||
value: "test.fakedomain.dns"
|
||||
initialDelaySeconds: {{ .Values.probes.startup.spec.initialDelaySeconds }}
|
||||
periodSeconds: {{ .Values.probes.startup.spec.periodSeconds }}
|
||||
timeoutSeconds: {{ .Values.probes.startup.spec.timeoutSeconds }}
|
||||
failureThreshold: {{ .Values.probes.startup.spec.failureThreshold }}
|
||||
{{- end -}}
|
||||
@@ -1,22 +0,0 @@
|
||||
{{/* Make sure all variables are set properly */}}
|
||||
{{- include "tc.common.loader.init" . }}
|
||||
|
||||
{{/* Render configmap for nextcloud */}}
|
||||
{{- include "nextcloud.configmap" . }}
|
||||
|
||||
{{- $newMiddlewares := append .Values.ingress.main.fixedMiddlewares "tc-nextcloud-chain" }}
|
||||
{{- $_ := set .Values.ingress.main "fixedMiddlewares" $newMiddlewares -}}
|
||||
|
||||
{{- $_ := set .Values.additionalContainers "nginx" (include "nextcloud.nginx" . | fromYaml) -}}
|
||||
{{- if .Values.imaginary.enabled -}}
|
||||
{{- $_ := set .Values.additionalContainers "imaginary" (include "nextcloud.imaginary" . | fromYaml) -}}
|
||||
{{- end -}}
|
||||
{{- if .Values.hpb.enabled -}}
|
||||
{{- $_ := set .Values.additionalContainers "hpb" (include "nextcloud.hpb" . | fromYaml) -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/* Render the templates */}}
|
||||
{{ include "tc.common.loader.apply" . }}
|
||||
|
||||
{{/* Render cronjob for nextcloud */}}
|
||||
{{- include "nextcloud.cronjob" . }}
|
||||
@@ -1,457 +0,0 @@
|
||||
image:
|
||||
repository: tccr.io/truecharts/nextcloud-fpm
|
||||
pullPolicy: IfNotPresent
|
||||
tag: 24.0.5@sha256:3448bd2ef8b73c61d0085cc1b2272b9e2573fe20333e94c12f8da35a1f8dd942
|
||||
|
||||
nginxImage:
|
||||
repository: tccr.io/truecharts/nginx-unprivileged
|
||||
pullPolicy: IfNotPresent
|
||||
tag: 1.23.1@sha256:7770a2428904ef89362174b8774c2b6f26f738ad34580183b7d6b86b619d730a
|
||||
|
||||
imaginaryImage:
|
||||
repository: h2non/imaginary
|
||||
pullPolicy: IfNotPresent
|
||||
tag: 1.2.4@sha256:7facb4221047a5e79b9e902f380247f4e5bf4376400d0badbeb738d3e1c2f654
|
||||
|
||||
securityContext:
|
||||
readOnlyRootFilesystem: false
|
||||
runAsNonRoot: false
|
||||
|
||||
podSecurityContext:
|
||||
runAsUser: 0
|
||||
runAsGroup: 0
|
||||
fsGroup: 33
|
||||
|
||||
service:
|
||||
main:
|
||||
ports:
|
||||
main:
|
||||
port: 10020
|
||||
targetPort: 8080
|
||||
backend:
|
||||
enabled: true
|
||||
ports:
|
||||
hpb:
|
||||
enabled: true
|
||||
port: 7867
|
||||
targetPort: 7867
|
||||
hpb-metrics:
|
||||
enabled: true
|
||||
port: 7868
|
||||
targetPort: 7868
|
||||
fpm:
|
||||
enabled: true
|
||||
port: 9000
|
||||
targetPort: 9000
|
||||
imaginary:
|
||||
enabled: true
|
||||
port: 9090
|
||||
targetPort: 9090
|
||||
|
||||
hostAliases:
|
||||
- ip: '{{ .Values.env.AccessIP | default "127.0.0.1" }}'
|
||||
hostnames:
|
||||
- "{{ if .Values.ingress.main.enabled }}{{ with (first .Values.ingress.main.hosts) }}{{ .host }}{{ end }}{{ else }}placeholder.fakedomain.dns{{ end }}"
|
||||
|
||||
secretEnv:
|
||||
NEXTCLOUD_ADMIN_USER: "admin"
|
||||
NEXTCLOUD_ADMIN_PASSWORD: "adminpass"
|
||||
|
||||
probes:
|
||||
liveness:
|
||||
custom: true
|
||||
spec:
|
||||
initialDelaySeconds: 25
|
||||
httpGet:
|
||||
path: /status.php
|
||||
port: 8080
|
||||
httpHeaders:
|
||||
- name: Host
|
||||
value: "test.fakedomain.dns"
|
||||
|
||||
readiness:
|
||||
custom: true
|
||||
spec:
|
||||
initialDelaySeconds: 25
|
||||
httpGet:
|
||||
path: /status.php
|
||||
port: 8080
|
||||
httpHeaders:
|
||||
- name: Host
|
||||
value: "test.fakedomain.dns"
|
||||
|
||||
startup:
|
||||
custom: true
|
||||
spec:
|
||||
initialDelaySeconds: 25
|
||||
httpGet:
|
||||
path: /status.php
|
||||
port: 8080
|
||||
httpHeaders:
|
||||
- name: Host
|
||||
value: "test.fakedomain.dns"
|
||||
|
||||
initContainers:
|
||||
prestart:
|
||||
image: '{{ include "tc.common.images.selector" . }}'
|
||||
securityContext:
|
||||
runAsUser: 0
|
||||
runAsGroup: 0
|
||||
privileged: true
|
||||
command:
|
||||
- "/bin/sh"
|
||||
- "-c"
|
||||
- |
|
||||
/bin/bash <<'EOF'
|
||||
echo "Forcing permissions on userdata folder..."
|
||||
if nfs4xdr_getfacl && nfs4xdr_getfacl | grep -qv "Failed to get NFSv4 ACL"; then
|
||||
echo "NFSv4 ACLs detected, Trying to override permissions using nfs4_setfacl..."
|
||||
nfs4_setfacl -R -a A:g:33:RWX "/var/www/html/data"
|
||||
else
|
||||
echo "No NFSv4 ACLs detected, trying to override permissions using chown/chmod..."
|
||||
echo "checking ownership..."
|
||||
if [ $(stat -c %g .) -eq 33 ]; then
|
||||
echo "Ownership already set to 33, skipping..."
|
||||
else
|
||||
echo "Changing ownership to group 33..."
|
||||
chown -R :33 "/var/www/html/data"
|
||||
fi
|
||||
chmod 770 /var/www/html/data
|
||||
fi
|
||||
EOF
|
||||
|
||||
volumeMounts:
|
||||
- name: data
|
||||
mountPath: "/var/www/html/data"
|
||||
- name: html
|
||||
mountPath: "/var/www/html"
|
||||
|
||||
env:
|
||||
# IP used for exposing nextcloud
|
||||
# Often the service or nodePort IP
|
||||
# Defaults to the main serviceName for CI purposes.
|
||||
AccessIP:
|
||||
NEXTCLOUD_INIT_HTACCESS: true
|
||||
PHP_MEMORY_LIMIT: 1G
|
||||
PHP_UPLOAD_LIMIT: 10G
|
||||
NEXTCLOUD_CHUNKSIZE: "31457280"
|
||||
TRUSTED_PROXIES: "172.16.0.0/16 127.0.0.1"
|
||||
POSTGRES_DB: "{{ .Values.postgresql.postgresqlDatabase }}"
|
||||
POSTGRES_USER: "{{ .Values.postgresql.postgresqlUsername }}"
|
||||
NC_check_data_directory_permissions: "true"
|
||||
POSTGRES_PASSWORD:
|
||||
secretKeyRef:
|
||||
name: dbcreds
|
||||
key: postgresql-password
|
||||
POSTGRES_HOST:
|
||||
secretKeyRef:
|
||||
name: dbcreds
|
||||
key: plainporthost
|
||||
REDIS_HOST:
|
||||
secretKeyRef:
|
||||
name: rediscreds
|
||||
key: plainhost
|
||||
REDIS_HOST_PASSWORD:
|
||||
secretKeyRef:
|
||||
name: rediscreds
|
||||
key: redis-password
|
||||
|
||||
envFrom:
|
||||
- configMapRef:
|
||||
name: nextcloudconfig
|
||||
|
||||
persistence:
|
||||
html:
|
||||
enabled: true
|
||||
mountPath: "/var/www/html"
|
||||
data:
|
||||
enabled: true
|
||||
mountPath: "/var/www/html/data"
|
||||
varrun:
|
||||
enabled: true
|
||||
cache:
|
||||
enabled: true
|
||||
type: emptyDir
|
||||
mountPath: /var/cache/nginx
|
||||
medium: Memory
|
||||
nginx:
|
||||
enabled: "true"
|
||||
mountPath: "/etc/nginx"
|
||||
noMount: true
|
||||
readOnly: true
|
||||
type: "custom"
|
||||
volumeSpec:
|
||||
configMap:
|
||||
name: '{{ include "tc.common.names.fullname" . }}-nginx'
|
||||
items:
|
||||
- key: nginx.conf
|
||||
path: nginx.conf
|
||||
|
||||
configmap:
|
||||
nginx:
|
||||
enabled: true
|
||||
data:
|
||||
nginx.conf: |-
|
||||
worker_processes auto;
|
||||
|
||||
error_log /var/log/nginx/error.log warn;
|
||||
pid /var/run/nginx.pid;
|
||||
|
||||
|
||||
events {
|
||||
worker_connections 1024;
|
||||
}
|
||||
|
||||
|
||||
http {
|
||||
include /etc/nginx/mime.types;
|
||||
default_type application/octet-stream;
|
||||
|
||||
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
|
||||
'$status $body_bytes_sent "$http_referer" '
|
||||
'"$http_user_agent" "$http_x_forwarded_for"';
|
||||
|
||||
access_log /var/log/nginx/access.log main;
|
||||
|
||||
sendfile on;
|
||||
#tcp_nopush on;
|
||||
|
||||
# Prevent nginx HTTP Server Detection
|
||||
server_tokens off;
|
||||
|
||||
keepalive_timeout 65;
|
||||
|
||||
#gzip on;
|
||||
|
||||
upstream php-handler {
|
||||
server 127.0.0.1:9000;
|
||||
}
|
||||
|
||||
server {
|
||||
listen 8080;
|
||||
absolute_redirect off;
|
||||
|
||||
# Forward Notify_Push "High Performance Backend" to it's own container
|
||||
location ^~ /push/ {
|
||||
proxy_pass http://127.0.0.1:7867/;
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header Upgrade $http_upgrade;
|
||||
proxy_set_header Connection "Upgrade";
|
||||
proxy_set_header Host $host;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
}
|
||||
|
||||
# HSTS settings
|
||||
# WARNING: Only add the preload option once you read about
|
||||
# the consequences in https://hstspreload.org/. This option
|
||||
# will add the domain to a hardcoded list that is shipped
|
||||
# in all major browsers and getting removed from this list
|
||||
# could take several months.
|
||||
#add_header Strict-Transport-Security "max-age=15768000; includeSubDomains; preload;" always;
|
||||
|
||||
# set max upload size
|
||||
client_max_body_size {{ .Values.env.PHP_UPLOAD_LIMIT | default "512M" }};
|
||||
fastcgi_buffers 64 4K;
|
||||
|
||||
# Enable gzip but do not remove ETag headers
|
||||
gzip on;
|
||||
gzip_vary on;
|
||||
gzip_comp_level 4;
|
||||
gzip_min_length 256;
|
||||
gzip_proxied expired no-cache no-store private no_last_modified no_etag auth;
|
||||
gzip_types application/atom+xml application/javascript application/json application/ld+json application/manifest+json application/rss+xml application/vnd.geo+json application/vnd.ms-fontobject application/x-font-ttf application/x-web-app-manifest+json application/xhtml+xml application/xml font/opentype image/bmp image/svg+xml image/x-icon text/cache-manifest text/css text/plain text/vcard text/vnd.rim.location.xloc text/vtt text/x-component text/x-cross-domain-policy;
|
||||
|
||||
# Pagespeed is not supported by Nextcloud, so if your server is built
|
||||
# with the `ngx_pagespeed` module, uncomment this line to disable it.
|
||||
#pagespeed off;
|
||||
|
||||
# HTTP response headers borrowed from Nextcloud `.htaccess`
|
||||
add_header Referrer-Policy "no-referrer" always;
|
||||
add_header X-Content-Type-Options "nosniff" always;
|
||||
add_header X-Download-Options "noopen" always;
|
||||
add_header X-Frame-Options "SAMEORIGIN" always;
|
||||
add_header X-Permitted-Cross-Domain-Policies "none" always;
|
||||
add_header X-Robots-Tag "none" always;
|
||||
add_header X-XSS-Protection "1; mode=block" always;
|
||||
|
||||
# Remove X-Powered-By, which is an information leak
|
||||
fastcgi_hide_header X-Powered-By;
|
||||
|
||||
# Path to the root of your installation
|
||||
root /var/www/html;
|
||||
|
||||
# Specify how to handle directories -- specifying `/index.php$request_uri`
|
||||
# here as the fallback means that Nginx always exhibits the desired behaviour
|
||||
# when a client requests a path that corresponds to a directory that exists
|
||||
# on the server. In particular, if that directory contains an index.php file,
|
||||
# that file is correctly served; if it doesn't, then the request is passed to
|
||||
# the front-end controller. This consistent behaviour means that we don't need
|
||||
# to specify custom rules for certain paths (e.g. images and other assets,
|
||||
# `/updater`, `/ocm-provider`, `/ocs-provider`), and thus
|
||||
# `try_files $uri $uri/ /index.php$request_uri`
|
||||
# always provides the desired behaviour.
|
||||
index index.php index.html /index.php$request_uri;
|
||||
|
||||
# Rule borrowed from `.htaccess` to handle Microsoft DAV clients
|
||||
location = / {
|
||||
if ( $http_user_agent ~ ^DavClnt ) {
|
||||
return 302 /remote.php/webdav/$is_args$args;
|
||||
}
|
||||
}
|
||||
|
||||
location = /robots.txt {
|
||||
allow all;
|
||||
log_not_found off;
|
||||
access_log off;
|
||||
}
|
||||
|
||||
# Make a regex exception for `/.well-known` so that clients can still
|
||||
# access it despite the existence of the regex rule
|
||||
# `location ~ /(\.|autotest|...)` which would otherwise handle requests
|
||||
# for `/.well-known`.
|
||||
location ^~ /.well-known {
|
||||
# The rules in this block are an adaptation of the rules
|
||||
# in `.htaccess` that concern `/.well-known`.
|
||||
|
||||
location = /.well-known/carddav { return 301 /remote.php/dav/; }
|
||||
location = /.well-known/caldav { return 301 /remote.php/dav/; }
|
||||
|
||||
# according to the documentation these two lines are not necessary, but some users are still recieving errors
|
||||
location = /.well-known/webfinger { return 301 /index.php$uri; }
|
||||
location = /.well-known/nodeinfo { return 301 /index.php$uri; }
|
||||
|
||||
location /.well-known/acme-challenge { try_files $uri $uri/ =404; }
|
||||
location /.well-known/pki-validation { try_files $uri $uri/ =404; }
|
||||
|
||||
# Let Nextcloud's API for `/.well-known` URIs handle all other
|
||||
# requests by passing them to the front-end controller.
|
||||
return 301 /index.php$request_uri;
|
||||
}
|
||||
|
||||
# Rules borrowed from `.htaccess` to hide certain paths from clients
|
||||
location ~ ^/(?:build|tests|config|lib|3rdparty|templates|data)(?:$|/) { return 404; }
|
||||
location ~ ^/(?:\.|autotest|occ|issue|indie|db_|console) { return 404; }
|
||||
|
||||
# Ensure this block, which passes PHP files to the PHP process, is above the blocks
|
||||
# which handle static assets (as seen below). If this block is not declared first,
|
||||
# then Nginx will encounter an infinite rewriting loop when it prepends `/index.php`
|
||||
# to the URI, resulting in a HTTP 500 error response.
|
||||
location ~ \.php(?:$|/) {
|
||||
# Required for legacy support
|
||||
rewrite ^/(?!index|remote|public|cron|core\/ajax\/update|status|ocs\/v[12]|updater\/.+|oc[ms]-provider\/.+|.+\/richdocumentscode\/proxy) /index.php$request_uri;
|
||||
|
||||
fastcgi_split_path_info ^(.+?\.php)(/.*)$;
|
||||
set $path_info $fastcgi_path_info;
|
||||
|
||||
try_files $fastcgi_script_name =404;
|
||||
|
||||
include fastcgi_params;
|
||||
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
|
||||
fastcgi_param PATH_INFO $path_info;
|
||||
#fastcgi_param HTTPS on;
|
||||
|
||||
fastcgi_param modHeadersAvailable true; # Avoid sending the security headers twice
|
||||
fastcgi_param front_controller_active true; # Enable pretty urls
|
||||
fastcgi_pass php-handler;
|
||||
|
||||
fastcgi_intercept_errors on;
|
||||
fastcgi_request_buffering off;
|
||||
|
||||
proxy_send_timeout 300s;
|
||||
proxy_read_timeout 300s;
|
||||
fastcgi_send_timeout 300s;
|
||||
fastcgi_read_timeout 300s;
|
||||
}
|
||||
|
||||
location ~ \.(?:css|js|svg|gif)$ {
|
||||
try_files $uri /index.php$request_uri;
|
||||
expires 6M; # Cache-Control policy borrowed from `.htaccess`
|
||||
access_log off; # Optional: Don't log access to assets
|
||||
}
|
||||
|
||||
location ~ \.woff2?$ {
|
||||
try_files $uri /index.php$request_uri;
|
||||
expires 7d; # Cache-Control policy borrowed from `.htaccess`
|
||||
access_log off; # Optional: Don't log access to assets
|
||||
}
|
||||
|
||||
# Rule borrowed from `.htaccess`
|
||||
location /remote {
|
||||
return 301 /remote.php$request_uri;
|
||||
}
|
||||
|
||||
location / {
|
||||
try_files $uri $uri/ /index.php$request_uri;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
cronjob:
|
||||
enabled: true
|
||||
generatePreviews: true
|
||||
schedule: "*/5 * * * *"
|
||||
annotations: {}
|
||||
failedJobsHistoryLimit: 5
|
||||
successfulJobsHistoryLimit: 2
|
||||
|
||||
hpb:
|
||||
enabled: true
|
||||
|
||||
nextcloud:
|
||||
# https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2#Officially_assigned_code_elements
|
||||
default_phone_region: ""
|
||||
|
||||
imaginary:
|
||||
enabled: true
|
||||
preview_max_x: 2048
|
||||
preview_max_y: 2048
|
||||
preview_max_memory: 512
|
||||
preview_max_filesize_image: 150
|
||||
preview_png: true
|
||||
preview_jpeg: true
|
||||
preview_gif: true
|
||||
preview_bmp: true
|
||||
preview_xbitmap: true
|
||||
preview_mp3: true
|
||||
preview_markdown: true
|
||||
preview_opendoc: true
|
||||
preview_txt: true
|
||||
preview_krita: true
|
||||
preview_illustrator: false
|
||||
preview_heic: false
|
||||
preview_movie: false
|
||||
preview_msoffice2003: false
|
||||
preview_msoffice2007: false
|
||||
preview_msofficedoc: false
|
||||
preview_pdf: false
|
||||
preview_photoshop: false
|
||||
preview_postscript: false
|
||||
preview_staroffice: false
|
||||
preview_svg: false
|
||||
preview_tiff: false
|
||||
preview_font: false
|
||||
|
||||
collabora:
|
||||
enabled: false
|
||||
env:
|
||||
aliasgroup1:
|
||||
configMapRef:
|
||||
name: nextcloudconfig
|
||||
key: aliasgroup1
|
||||
dictionaries: "de_DE en_GB en_US es_ES fr_FR it nl pt_BR pt_PT ru"
|
||||
extra_params: "--o:welcome.enable=false --o:logging.level=information --o:user_interface.mode=notebookbar --o:ssl.termination=true --o:ssl.enable=false "
|
||||
server_name: ""
|
||||
DONT_GEN_SSL_CERT: true
|
||||
|
||||
postgresql:
|
||||
enabled: true
|
||||
existingSecret: "dbcreds"
|
||||
postgresqlUsername: nextcloud
|
||||
postgresqlDatabase: nextcloud
|
||||
|
||||
redis:
|
||||
enabled: true
|
||||
existingSecret: "rediscreds"
|
||||
|
||||
portal:
|
||||
enabled: true
|
||||
@@ -1,31 +0,0 @@
|
||||
apiVersion: v2
|
||||
appVersion: "2.8.4"
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: https://library-charts.truecharts.org
|
||||
version: 10.5.9
|
||||
deprecated: false
|
||||
description: Traefik is a flexible reverse proxy and Ingress Provider.
|
||||
home: https://truecharts.org/docs/charts/stable/traefik
|
||||
icon: https://truecharts.org/img/hotlink-ok/chart-icons/traefik.png
|
||||
keywords:
|
||||
- traefik
|
||||
- ingress
|
||||
kubeVersion: ">=1.16.0-0"
|
||||
maintainers:
|
||||
- email: info@truecharts.org
|
||||
name: TrueCharts
|
||||
url: https://truecharts.org
|
||||
name: traefik
|
||||
sources:
|
||||
- https://github.com/truecharts/charts/tree/master/charts/stable/traefik
|
||||
- https://github.com/traefik/traefik
|
||||
- https://github.com/traefik/traefik-helm-chart
|
||||
- https://traefik.io/
|
||||
type: application
|
||||
version: 13.3.7
|
||||
annotations:
|
||||
truecharts.org/catagories: |
|
||||
- network
|
||||
truecharts.org/SCALE-support: "true"
|
||||
truecharts.org/grade: U
|
||||
@@ -1 +0,0 @@
|
||||
|
||||
@@ -1,209 +0,0 @@
|
||||
apiVersion: apiextensions.k8s.io/v1
|
||||
kind: CustomResourceDefinition
|
||||
metadata:
|
||||
annotations:
|
||||
"helm.sh/resource-policy": keep
|
||||
"helm.sh/hook": pre-install,pre-upgrade,pre-rollback
|
||||
controller-gen.kubebuilder.io/version: v0.4.1
|
||||
creationTimestamp: null
|
||||
name: ingressroutes.traefik.containo.us
|
||||
spec:
|
||||
group: traefik.containo.us
|
||||
names:
|
||||
kind: IngressRoute
|
||||
listKind: IngressRouteList
|
||||
plural: ingressroutes
|
||||
singular: ingressroute
|
||||
scope: Namespaced
|
||||
versions:
|
||||
- name: v1alpha1
|
||||
schema:
|
||||
openAPIV3Schema:
|
||||
description: IngressRoute is an Ingress CRD specification.
|
||||
properties:
|
||||
apiVersion:
|
||||
description:
|
||||
"APIVersion defines the versioned schema of this representation
|
||||
of an object. Servers should convert recognized schemas to the latest
|
||||
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources"
|
||||
type: string
|
||||
kind:
|
||||
description:
|
||||
"Kind is a string value representing the REST resource this
|
||||
object represents. Servers may infer this from the endpoint the client
|
||||
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds"
|
||||
type: string
|
||||
metadata:
|
||||
type: object
|
||||
spec:
|
||||
description:
|
||||
IngressRouteSpec is a specification for a IngressRouteSpec
|
||||
resource.
|
||||
properties:
|
||||
entryPoints:
|
||||
items:
|
||||
type: string
|
||||
type: array
|
||||
routes:
|
||||
items:
|
||||
description: Route contains the set of routes.
|
||||
properties:
|
||||
kind:
|
||||
enum:
|
||||
- Rule
|
||||
type: string
|
||||
match:
|
||||
type: string
|
||||
middlewares:
|
||||
items:
|
||||
description: MiddlewareRef is a ref to the Middleware resources.
|
||||
properties:
|
||||
name:
|
||||
type: string
|
||||
namespace:
|
||||
type: string
|
||||
required:
|
||||
- name
|
||||
type: object
|
||||
type: array
|
||||
priority:
|
||||
type: integer
|
||||
services:
|
||||
items:
|
||||
description: Service defines an upstream to proxy traffic.
|
||||
properties:
|
||||
kind:
|
||||
enum:
|
||||
- Service
|
||||
- TraefikService
|
||||
type: string
|
||||
name:
|
||||
description:
|
||||
Name is a reference to a Kubernetes Service
|
||||
object (for a load-balancer of servers), or to a TraefikService
|
||||
object (service load-balancer, mirroring, etc). The
|
||||
differentiation between the two is specified in the
|
||||
Kind field.
|
||||
type: string
|
||||
namespace:
|
||||
type: string
|
||||
passHostHeader:
|
||||
type: boolean
|
||||
port:
|
||||
anyOf:
|
||||
- type: integer
|
||||
- type: string
|
||||
x-kubernetes-int-or-string: true
|
||||
responseForwarding:
|
||||
description:
|
||||
ResponseForwarding holds configuration for
|
||||
the forward of the response.
|
||||
properties:
|
||||
flushInterval:
|
||||
type: string
|
||||
type: object
|
||||
scheme:
|
||||
type: string
|
||||
serversTransport:
|
||||
type: string
|
||||
sticky:
|
||||
description: Sticky holds the sticky configuration.
|
||||
properties:
|
||||
cookie:
|
||||
description:
|
||||
Cookie holds the sticky configuration
|
||||
based on cookie.
|
||||
properties:
|
||||
httpOnly:
|
||||
type: boolean
|
||||
name:
|
||||
type: string
|
||||
sameSite:
|
||||
type: string
|
||||
secure:
|
||||
type: boolean
|
||||
type: object
|
||||
type: object
|
||||
strategy:
|
||||
type: string
|
||||
weight:
|
||||
description:
|
||||
Weight should only be specified when Name
|
||||
references a TraefikService object (and to be precise,
|
||||
one that embeds a Weighted Round Robin).
|
||||
type: integer
|
||||
required:
|
||||
- name
|
||||
type: object
|
||||
type: array
|
||||
required:
|
||||
- kind
|
||||
- match
|
||||
type: object
|
||||
type: array
|
||||
tls:
|
||||
description:
|
||||
"TLS contains the TLS certificates configuration of the
|
||||
routes. To enable Let's Encrypt, use an empty TLS struct, e.g. in
|
||||
YAML: \n \t tls: {} # inline format \n \t tls: \t secretName:
|
||||
# block format"
|
||||
properties:
|
||||
certResolver:
|
||||
type: string
|
||||
domains:
|
||||
items:
|
||||
description: Domain holds a domain name with SANs.
|
||||
properties:
|
||||
main:
|
||||
type: string
|
||||
sans:
|
||||
items:
|
||||
type: string
|
||||
type: array
|
||||
type: object
|
||||
type: array
|
||||
options:
|
||||
description:
|
||||
Options is a reference to a TLSOption, that specifies
|
||||
the parameters of the TLS connection.
|
||||
properties:
|
||||
name:
|
||||
type: string
|
||||
namespace:
|
||||
type: string
|
||||
required:
|
||||
- name
|
||||
type: object
|
||||
secretName:
|
||||
description:
|
||||
SecretName is the name of the referenced Kubernetes
|
||||
Secret to specify the certificate details.
|
||||
type: string
|
||||
store:
|
||||
description:
|
||||
Store is a reference to a TLSStore, that specifies
|
||||
the parameters of the TLS store.
|
||||
properties:
|
||||
name:
|
||||
type: string
|
||||
namespace:
|
||||
type: string
|
||||
required:
|
||||
- name
|
||||
type: object
|
||||
type: object
|
||||
required:
|
||||
- routes
|
||||
type: object
|
||||
required:
|
||||
- metadata
|
||||
- spec
|
||||
type: object
|
||||
served: true
|
||||
storage: true
|
||||
status:
|
||||
acceptedNames:
|
||||
kind: ""
|
||||
plural: ""
|
||||
conditions: []
|
||||
storedVersions: []
|
||||
@@ -1,169 +0,0 @@
|
||||
apiVersion: apiextensions.k8s.io/v1
|
||||
kind: CustomResourceDefinition
|
||||
metadata:
|
||||
annotations:
|
||||
"helm.sh/resource-policy": keep
|
||||
"helm.sh/hook": pre-install,pre-upgrade,pre-rollback
|
||||
controller-gen.kubebuilder.io/version: v0.4.1
|
||||
creationTimestamp: null
|
||||
name: ingressroutetcps.traefik.containo.us
|
||||
spec:
|
||||
group: traefik.containo.us
|
||||
names:
|
||||
kind: IngressRouteTCP
|
||||
listKind: IngressRouteTCPList
|
||||
plural: ingressroutetcps
|
||||
singular: ingressroutetcp
|
||||
scope: Namespaced
|
||||
versions:
|
||||
- name: v1alpha1
|
||||
schema:
|
||||
openAPIV3Schema:
|
||||
description: IngressRouteTCP is an Ingress CRD specification.
|
||||
properties:
|
||||
apiVersion:
|
||||
description:
|
||||
"APIVersion defines the versioned schema of this representation
|
||||
of an object. Servers should convert recognized schemas to the latest
|
||||
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources"
|
||||
type: string
|
||||
kind:
|
||||
description:
|
||||
"Kind is a string value representing the REST resource this
|
||||
object represents. Servers may infer this from the endpoint the client
|
||||
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds"
|
||||
type: string
|
||||
metadata:
|
||||
type: object
|
||||
spec:
|
||||
description:
|
||||
IngressRouteTCPSpec is a specification for a IngressRouteTCPSpec
|
||||
resource.
|
||||
properties:
|
||||
entryPoints:
|
||||
items:
|
||||
type: string
|
||||
type: array
|
||||
routes:
|
||||
items:
|
||||
description: RouteTCP contains the set of routes.
|
||||
properties:
|
||||
match:
|
||||
type: string
|
||||
middlewares:
|
||||
description:
|
||||
Middlewares contains references to MiddlewareTCP
|
||||
resources.
|
||||
items:
|
||||
description:
|
||||
ObjectReference is a generic reference to a Traefik
|
||||
resource.
|
||||
properties:
|
||||
name:
|
||||
type: string
|
||||
namespace:
|
||||
type: string
|
||||
required:
|
||||
- name
|
||||
type: object
|
||||
type: array
|
||||
services:
|
||||
items:
|
||||
description: ServiceTCP defines an upstream to proxy traffic.
|
||||
properties:
|
||||
name:
|
||||
type: string
|
||||
namespace:
|
||||
type: string
|
||||
port:
|
||||
anyOf:
|
||||
- type: integer
|
||||
- type: string
|
||||
x-kubernetes-int-or-string: true
|
||||
proxyProtocol:
|
||||
description: ProxyProtocol holds the ProxyProtocol configuration.
|
||||
properties:
|
||||
version:
|
||||
type: integer
|
||||
type: object
|
||||
terminationDelay:
|
||||
type: integer
|
||||
weight:
|
||||
type: integer
|
||||
required:
|
||||
- name
|
||||
- port
|
||||
type: object
|
||||
type: array
|
||||
required:
|
||||
- match
|
||||
type: object
|
||||
type: array
|
||||
tls:
|
||||
description:
|
||||
"TLSTCP contains the TLS certificates configuration of
|
||||
the routes. To enable Let's Encrypt, use an empty TLS struct, e.g.
|
||||
in YAML: \n \t tls: {} # inline format \n \t tls: \t secretName:
|
||||
# block format"
|
||||
properties:
|
||||
certResolver:
|
||||
type: string
|
||||
domains:
|
||||
items:
|
||||
description: Domain holds a domain name with SANs.
|
||||
properties:
|
||||
main:
|
||||
type: string
|
||||
sans:
|
||||
items:
|
||||
type: string
|
||||
type: array
|
||||
type: object
|
||||
type: array
|
||||
options:
|
||||
description:
|
||||
Options is a reference to a TLSOption, that specifies
|
||||
the parameters of the TLS connection.
|
||||
properties:
|
||||
name:
|
||||
type: string
|
||||
namespace:
|
||||
type: string
|
||||
required:
|
||||
- name
|
||||
type: object
|
||||
passthrough:
|
||||
type: boolean
|
||||
secretName:
|
||||
description:
|
||||
SecretName is the name of the referenced Kubernetes
|
||||
Secret to specify the certificate details.
|
||||
type: string
|
||||
store:
|
||||
description:
|
||||
Store is a reference to a TLSStore, that specifies
|
||||
the parameters of the TLS store.
|
||||
properties:
|
||||
name:
|
||||
type: string
|
||||
namespace:
|
||||
type: string
|
||||
required:
|
||||
- name
|
||||
type: object
|
||||
type: object
|
||||
required:
|
||||
- routes
|
||||
type: object
|
||||
required:
|
||||
- metadata
|
||||
- spec
|
||||
type: object
|
||||
served: true
|
||||
storage: true
|
||||
status:
|
||||
acceptedNames:
|
||||
kind: ""
|
||||
plural: ""
|
||||
conditions: []
|
||||
storedVersions: []
|
||||
@@ -1,87 +0,0 @@
|
||||
apiVersion: apiextensions.k8s.io/v1
|
||||
kind: CustomResourceDefinition
|
||||
metadata:
|
||||
annotations:
|
||||
"helm.sh/resource-policy": keep
|
||||
"helm.sh/hook": pre-install,pre-upgrade,pre-rollback
|
||||
controller-gen.kubebuilder.io/version: v0.4.1
|
||||
creationTimestamp: null
|
||||
name: ingressrouteudps.traefik.containo.us
|
||||
spec:
|
||||
group: traefik.containo.us
|
||||
names:
|
||||
kind: IngressRouteUDP
|
||||
listKind: IngressRouteUDPList
|
||||
plural: ingressrouteudps
|
||||
singular: ingressrouteudp
|
||||
scope: Namespaced
|
||||
versions:
|
||||
- name: v1alpha1
|
||||
schema:
|
||||
openAPIV3Schema:
|
||||
description: IngressRouteUDP is an Ingress CRD specification.
|
||||
properties:
|
||||
apiVersion:
|
||||
description:
|
||||
"APIVersion defines the versioned schema of this representation
|
||||
of an object. Servers should convert recognized schemas to the latest
|
||||
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources"
|
||||
type: string
|
||||
kind:
|
||||
description:
|
||||
"Kind is a string value representing the REST resource this
|
||||
object represents. Servers may infer this from the endpoint the client
|
||||
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds"
|
||||
type: string
|
||||
metadata:
|
||||
type: object
|
||||
spec:
|
||||
description:
|
||||
IngressRouteUDPSpec is a specification for a IngressRouteUDPSpec
|
||||
resource.
|
||||
properties:
|
||||
entryPoints:
|
||||
items:
|
||||
type: string
|
||||
type: array
|
||||
routes:
|
||||
items:
|
||||
description: RouteUDP contains the set of routes.
|
||||
properties:
|
||||
services:
|
||||
items:
|
||||
description: ServiceUDP defines an upstream to proxy traffic.
|
||||
properties:
|
||||
name:
|
||||
type: string
|
||||
namespace:
|
||||
type: string
|
||||
port:
|
||||
anyOf:
|
||||
- type: integer
|
||||
- type: string
|
||||
x-kubernetes-int-or-string: true
|
||||
weight:
|
||||
type: integer
|
||||
required:
|
||||
- name
|
||||
- port
|
||||
type: object
|
||||
type: array
|
||||
type: object
|
||||
type: array
|
||||
required:
|
||||
- routes
|
||||
type: object
|
||||
required:
|
||||
- metadata
|
||||
- spec
|
||||
type: object
|
||||
served: true
|
||||
storage: true
|
||||
status:
|
||||
acceptedNames:
|
||||
kind: ""
|
||||
plural: ""
|
||||
conditions: []
|
||||
storedVersions: []
|
||||
@@ -1,587 +0,0 @@
|
||||
apiVersion: apiextensions.k8s.io/v1
|
||||
kind: CustomResourceDefinition
|
||||
metadata:
|
||||
annotations:
|
||||
"helm.sh/resource-policy": keep
|
||||
"helm.sh/hook": pre-install,pre-upgrade,pre-rollback
|
||||
controller-gen.kubebuilder.io/version: v0.4.1
|
||||
creationTimestamp: null
|
||||
name: middlewares.traefik.containo.us
|
||||
spec:
|
||||
group: traefik.containo.us
|
||||
names:
|
||||
kind: Middleware
|
||||
listKind: MiddlewareList
|
||||
plural: middlewares
|
||||
singular: middleware
|
||||
scope: Namespaced
|
||||
versions:
|
||||
- name: v1alpha1
|
||||
schema:
|
||||
openAPIV3Schema:
|
||||
description: Middleware is a specification for a Middleware resource.
|
||||
properties:
|
||||
apiVersion:
|
||||
description:
|
||||
"APIVersion defines the versioned schema of this representation
|
||||
of an object. Servers should convert recognized schemas to the latest
|
||||
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources"
|
||||
type: string
|
||||
kind:
|
||||
description:
|
||||
"Kind is a string value representing the REST resource this
|
||||
object represents. Servers may infer this from the endpoint the client
|
||||
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds"
|
||||
type: string
|
||||
metadata:
|
||||
type: object
|
||||
spec:
|
||||
description: MiddlewareSpec holds the Middleware configuration.
|
||||
properties:
|
||||
addPrefix:
|
||||
description: AddPrefix holds the AddPrefix configuration.
|
||||
properties:
|
||||
prefix:
|
||||
type: string
|
||||
type: object
|
||||
basicAuth:
|
||||
description: BasicAuth holds the HTTP basic authentication configuration.
|
||||
properties:
|
||||
headerField:
|
||||
type: string
|
||||
realm:
|
||||
type: string
|
||||
removeHeader:
|
||||
type: boolean
|
||||
secret:
|
||||
type: string
|
||||
type: object
|
||||
buffering:
|
||||
description: Buffering holds the request/response buffering configuration.
|
||||
properties:
|
||||
maxRequestBodyBytes:
|
||||
format: int64
|
||||
type: integer
|
||||
maxResponseBodyBytes:
|
||||
format: int64
|
||||
type: integer
|
||||
memRequestBodyBytes:
|
||||
format: int64
|
||||
type: integer
|
||||
memResponseBodyBytes:
|
||||
format: int64
|
||||
type: integer
|
||||
retryExpression:
|
||||
type: string
|
||||
type: object
|
||||
chain:
|
||||
description: Chain holds a chain of middlewares.
|
||||
properties:
|
||||
middlewares:
|
||||
items:
|
||||
description: MiddlewareRef is a ref to the Middleware resources.
|
||||
properties:
|
||||
name:
|
||||
type: string
|
||||
namespace:
|
||||
type: string
|
||||
required:
|
||||
- name
|
||||
type: object
|
||||
type: array
|
||||
type: object
|
||||
circuitBreaker:
|
||||
description: CircuitBreaker holds the circuit breaker configuration.
|
||||
properties:
|
||||
expression:
|
||||
type: string
|
||||
type: object
|
||||
compress:
|
||||
description: Compress holds the compress configuration.
|
||||
properties:
|
||||
excludedContentTypes:
|
||||
items:
|
||||
type: string
|
||||
type: array
|
||||
type: object
|
||||
contentType:
|
||||
description:
|
||||
ContentType middleware - or rather its unique `autoDetect`
|
||||
option - specifies whether to let the `Content-Type` header, if
|
||||
it has not been set by the backend, be automatically set to a value
|
||||
derived from the contents of the response. As a proxy, the default
|
||||
behavior should be to leave the header alone, regardless of what
|
||||
the backend did with it. However, the historic default was to always
|
||||
auto-detect and set the header if it was nil, and it is going to
|
||||
be kept that way in order to support users currently relying on
|
||||
it. This middleware exists to enable the correct behavior until
|
||||
at least the default one can be changed in a future version.
|
||||
properties:
|
||||
autoDetect:
|
||||
type: boolean
|
||||
type: object
|
||||
digestAuth:
|
||||
description: DigestAuth holds the Digest HTTP authentication configuration.
|
||||
properties:
|
||||
headerField:
|
||||
type: string
|
||||
realm:
|
||||
type: string
|
||||
removeHeader:
|
||||
type: boolean
|
||||
secret:
|
||||
type: string
|
||||
type: object
|
||||
errors:
|
||||
description: ErrorPage holds the custom error page configuration.
|
||||
properties:
|
||||
query:
|
||||
type: string
|
||||
service:
|
||||
description: Service defines an upstream to proxy traffic.
|
||||
properties:
|
||||
kind:
|
||||
enum:
|
||||
- Service
|
||||
- TraefikService
|
||||
type: string
|
||||
name:
|
||||
description:
|
||||
Name is a reference to a Kubernetes Service object
|
||||
(for a load-balancer of servers), or to a TraefikService
|
||||
object (service load-balancer, mirroring, etc). The differentiation
|
||||
between the two is specified in the Kind field.
|
||||
type: string
|
||||
namespace:
|
||||
type: string
|
||||
passHostHeader:
|
||||
type: boolean
|
||||
port:
|
||||
anyOf:
|
||||
- type: integer
|
||||
- type: string
|
||||
x-kubernetes-int-or-string: true
|
||||
responseForwarding:
|
||||
description:
|
||||
ResponseForwarding holds configuration for the
|
||||
forward of the response.
|
||||
properties:
|
||||
flushInterval:
|
||||
type: string
|
||||
type: object
|
||||
scheme:
|
||||
type: string
|
||||
serversTransport:
|
||||
type: string
|
||||
sticky:
|
||||
description: Sticky holds the sticky configuration.
|
||||
properties:
|
||||
cookie:
|
||||
description:
|
||||
Cookie holds the sticky configuration based
|
||||
on cookie.
|
||||
properties:
|
||||
httpOnly:
|
||||
type: boolean
|
||||
name:
|
||||
type: string
|
||||
sameSite:
|
||||
type: string
|
||||
secure:
|
||||
type: boolean
|
||||
type: object
|
||||
type: object
|
||||
strategy:
|
||||
type: string
|
||||
weight:
|
||||
description:
|
||||
Weight should only be specified when Name references
|
||||
a TraefikService object (and to be precise, one that embeds
|
||||
a Weighted Round Robin).
|
||||
type: integer
|
||||
required:
|
||||
- name
|
||||
type: object
|
||||
status:
|
||||
items:
|
||||
type: string
|
||||
type: array
|
||||
type: object
|
||||
forwardAuth:
|
||||
description: ForwardAuth holds the http forward authentication configuration.
|
||||
properties:
|
||||
address:
|
||||
type: string
|
||||
authRequestHeaders:
|
||||
items:
|
||||
type: string
|
||||
type: array
|
||||
authResponseHeaders:
|
||||
items:
|
||||
type: string
|
||||
type: array
|
||||
authResponseHeadersRegex:
|
||||
type: string
|
||||
tls:
|
||||
description: ClientTLS holds TLS specific configurations as client.
|
||||
properties:
|
||||
caOptional:
|
||||
type: boolean
|
||||
caSecret:
|
||||
type: string
|
||||
certSecret:
|
||||
type: string
|
||||
insecureSkipVerify:
|
||||
type: boolean
|
||||
type: object
|
||||
trustForwardHeader:
|
||||
type: boolean
|
||||
type: object
|
||||
headers:
|
||||
description: Headers holds the custom header configuration.
|
||||
properties:
|
||||
accessControlAllowCredentials:
|
||||
description:
|
||||
AccessControlAllowCredentials is only valid if true.
|
||||
false is ignored.
|
||||
type: boolean
|
||||
accessControlAllowHeaders:
|
||||
description:
|
||||
AccessControlAllowHeaders must be used in response
|
||||
to a preflight request with Access-Control-Request-Headers set.
|
||||
items:
|
||||
type: string
|
||||
type: array
|
||||
accessControlAllowMethods:
|
||||
description:
|
||||
AccessControlAllowMethods must be used in response
|
||||
to a preflight request with Access-Control-Request-Method set.
|
||||
items:
|
||||
type: string
|
||||
type: array
|
||||
accessControlAllowOriginList:
|
||||
description:
|
||||
AccessControlAllowOriginList is a list of allowable
|
||||
origins. Can also be a wildcard origin "*".
|
||||
items:
|
||||
type: string
|
||||
type: array
|
||||
accessControlAllowOriginListRegex:
|
||||
description:
|
||||
AccessControlAllowOriginListRegex is a list of allowable
|
||||
origins written following the Regular Expression syntax (https://golang.org/pkg/regexp/).
|
||||
items:
|
||||
type: string
|
||||
type: array
|
||||
accessControlExposeHeaders:
|
||||
description:
|
||||
AccessControlExposeHeaders sets valid headers for
|
||||
the response.
|
||||
items:
|
||||
type: string
|
||||
type: array
|
||||
accessControlMaxAge:
|
||||
description:
|
||||
AccessControlMaxAge sets the time that a preflight
|
||||
request may be cached.
|
||||
format: int64
|
||||
type: integer
|
||||
addVaryHeader:
|
||||
description:
|
||||
AddVaryHeader controls if the Vary header is automatically
|
||||
added/updated when the AccessControlAllowOriginList is set.
|
||||
type: boolean
|
||||
allowedHosts:
|
||||
items:
|
||||
type: string
|
||||
type: array
|
||||
browserXssFilter:
|
||||
type: boolean
|
||||
contentSecurityPolicy:
|
||||
type: string
|
||||
contentTypeNosniff:
|
||||
type: boolean
|
||||
customBrowserXSSValue:
|
||||
type: string
|
||||
customFrameOptionsValue:
|
||||
type: string
|
||||
customRequestHeaders:
|
||||
additionalProperties:
|
||||
type: string
|
||||
type: object
|
||||
customResponseHeaders:
|
||||
additionalProperties:
|
||||
type: string
|
||||
type: object
|
||||
featurePolicy:
|
||||
type: string
|
||||
forceSTSHeader:
|
||||
type: boolean
|
||||
frameDeny:
|
||||
type: boolean
|
||||
hostsProxyHeaders:
|
||||
items:
|
||||
type: string
|
||||
type: array
|
||||
isDevelopment:
|
||||
type: boolean
|
||||
publicKey:
|
||||
type: string
|
||||
referrerPolicy:
|
||||
type: string
|
||||
sslForceHost:
|
||||
description: "Deprecated: use RedirectRegex instead."
|
||||
type: boolean
|
||||
sslHost:
|
||||
description: "Deprecated: use RedirectRegex instead."
|
||||
type: string
|
||||
sslProxyHeaders:
|
||||
additionalProperties:
|
||||
type: string
|
||||
type: object
|
||||
sslRedirect:
|
||||
description:
|
||||
"Deprecated: use EntryPoint redirection or RedirectScheme
|
||||
instead."
|
||||
type: boolean
|
||||
sslTemporaryRedirect:
|
||||
description:
|
||||
"Deprecated: use EntryPoint redirection or RedirectScheme
|
||||
instead."
|
||||
type: boolean
|
||||
stsIncludeSubdomains:
|
||||
type: boolean
|
||||
stsPreload:
|
||||
type: boolean
|
||||
stsSeconds:
|
||||
format: int64
|
||||
type: integer
|
||||
type: object
|
||||
inFlightReq:
|
||||
description:
|
||||
InFlightReq limits the number of requests being processed
|
||||
and served concurrently.
|
||||
properties:
|
||||
amount:
|
||||
format: int64
|
||||
type: integer
|
||||
sourceCriterion:
|
||||
description:
|
||||
SourceCriterion defines what criterion is used to
|
||||
group requests as originating from a common source. If none
|
||||
are set, the default is to use the request's remote address
|
||||
field. All fields are mutually exclusive.
|
||||
properties:
|
||||
ipStrategy:
|
||||
description: IPStrategy holds the ip strategy configuration.
|
||||
properties:
|
||||
depth:
|
||||
type: integer
|
||||
excludedIPs:
|
||||
items:
|
||||
type: string
|
||||
type: array
|
||||
type: object
|
||||
requestHeaderName:
|
||||
type: string
|
||||
requestHost:
|
||||
type: boolean
|
||||
type: object
|
||||
type: object
|
||||
ipWhiteList:
|
||||
description: IPWhiteList holds the ip white list configuration.
|
||||
properties:
|
||||
ipStrategy:
|
||||
description: IPStrategy holds the ip strategy configuration.
|
||||
properties:
|
||||
depth:
|
||||
type: integer
|
||||
excludedIPs:
|
||||
items:
|
||||
type: string
|
||||
type: array
|
||||
type: object
|
||||
sourceRange:
|
||||
items:
|
||||
type: string
|
||||
type: array
|
||||
type: object
|
||||
passTLSClientCert:
|
||||
description: PassTLSClientCert holds the TLS client cert headers configuration.
|
||||
properties:
|
||||
info:
|
||||
description:
|
||||
TLSClientCertificateInfo holds the client TLS certificate
|
||||
info configuration.
|
||||
properties:
|
||||
issuer:
|
||||
description:
|
||||
TLSCLientCertificateDNInfo holds the client TLS
|
||||
certificate distinguished name info configuration. cf https://tools.ietf.org/html/rfc3739
|
||||
properties:
|
||||
commonName:
|
||||
type: boolean
|
||||
country:
|
||||
type: boolean
|
||||
domainComponent:
|
||||
type: boolean
|
||||
locality:
|
||||
type: boolean
|
||||
organization:
|
||||
type: boolean
|
||||
province:
|
||||
type: boolean
|
||||
serialNumber:
|
||||
type: boolean
|
||||
type: object
|
||||
notAfter:
|
||||
type: boolean
|
||||
notBefore:
|
||||
type: boolean
|
||||
sans:
|
||||
type: boolean
|
||||
serialNumber:
|
||||
type: boolean
|
||||
subject:
|
||||
description:
|
||||
TLSCLientCertificateDNInfo holds the client TLS
|
||||
certificate distinguished name info configuration. cf https://tools.ietf.org/html/rfc3739
|
||||
properties:
|
||||
commonName:
|
||||
type: boolean
|
||||
country:
|
||||
type: boolean
|
||||
domainComponent:
|
||||
type: boolean
|
||||
locality:
|
||||
type: boolean
|
||||
organization:
|
||||
type: boolean
|
||||
province:
|
||||
type: boolean
|
||||
serialNumber:
|
||||
type: boolean
|
||||
type: object
|
||||
type: object
|
||||
pem:
|
||||
type: boolean
|
||||
type: object
|
||||
plugin:
|
||||
additionalProperties:
|
||||
x-kubernetes-preserve-unknown-fields: true
|
||||
type: object
|
||||
rateLimit:
|
||||
description:
|
||||
RateLimit holds the rate limiting configuration for a
|
||||
given router.
|
||||
properties:
|
||||
average:
|
||||
format: int64
|
||||
type: integer
|
||||
burst:
|
||||
format: int64
|
||||
type: integer
|
||||
period:
|
||||
anyOf:
|
||||
- type: integer
|
||||
- type: string
|
||||
x-kubernetes-int-or-string: true
|
||||
sourceCriterion:
|
||||
description:
|
||||
SourceCriterion defines what criterion is used to
|
||||
group requests as originating from a common source. If none
|
||||
are set, the default is to use the request's remote address
|
||||
field. All fields are mutually exclusive.
|
||||
properties:
|
||||
ipStrategy:
|
||||
description: IPStrategy holds the ip strategy configuration.
|
||||
properties:
|
||||
depth:
|
||||
type: integer
|
||||
excludedIPs:
|
||||
items:
|
||||
type: string
|
||||
type: array
|
||||
type: object
|
||||
requestHeaderName:
|
||||
type: string
|
||||
requestHost:
|
||||
type: boolean
|
||||
type: object
|
||||
type: object
|
||||
redirectRegex:
|
||||
description: RedirectRegex holds the redirection configuration.
|
||||
properties:
|
||||
permanent:
|
||||
type: boolean
|
||||
regex:
|
||||
type: string
|
||||
replacement:
|
||||
type: string
|
||||
type: object
|
||||
redirectScheme:
|
||||
description: RedirectScheme holds the scheme redirection configuration.
|
||||
properties:
|
||||
permanent:
|
||||
type: boolean
|
||||
port:
|
||||
type: string
|
||||
scheme:
|
||||
type: string
|
||||
type: object
|
||||
replacePath:
|
||||
description: ReplacePath holds the ReplacePath configuration.
|
||||
properties:
|
||||
path:
|
||||
type: string
|
||||
type: object
|
||||
replacePathRegex:
|
||||
description: ReplacePathRegex holds the ReplacePathRegex configuration.
|
||||
properties:
|
||||
regex:
|
||||
type: string
|
||||
replacement:
|
||||
type: string
|
||||
type: object
|
||||
retry:
|
||||
description: Retry holds the retry configuration.
|
||||
properties:
|
||||
attempts:
|
||||
type: integer
|
||||
initialInterval:
|
||||
anyOf:
|
||||
- type: integer
|
||||
- type: string
|
||||
x-kubernetes-int-or-string: true
|
||||
type: object
|
||||
stripPrefix:
|
||||
description: StripPrefix holds the StripPrefix configuration.
|
||||
properties:
|
||||
forceSlash:
|
||||
type: boolean
|
||||
prefixes:
|
||||
items:
|
||||
type: string
|
||||
type: array
|
||||
type: object
|
||||
stripPrefixRegex:
|
||||
description: StripPrefixRegex holds the StripPrefixRegex configuration.
|
||||
properties:
|
||||
regex:
|
||||
items:
|
||||
type: string
|
||||
type: array
|
||||
type: object
|
||||
type: object
|
||||
required:
|
||||
- metadata
|
||||
- spec
|
||||
type: object
|
||||
served: true
|
||||
storage: true
|
||||
status:
|
||||
acceptedNames:
|
||||
kind: ""
|
||||
plural: ""
|
||||
conditions: []
|
||||
storedVersions: []
|
||||
@@ -1,61 +0,0 @@
|
||||
apiVersion: apiextensions.k8s.io/v1
|
||||
kind: CustomResourceDefinition
|
||||
metadata:
|
||||
annotations:
|
||||
"helm.sh/resource-policy": keep
|
||||
"helm.sh/hook": pre-install,pre-upgrade,pre-rollback
|
||||
controller-gen.kubebuilder.io/version: v0.4.1
|
||||
creationTimestamp: null
|
||||
name: middlewaretcps.traefik.containo.us
|
||||
spec:
|
||||
group: traefik.containo.us
|
||||
names:
|
||||
kind: MiddlewareTCP
|
||||
listKind: MiddlewareTCPList
|
||||
plural: middlewaretcps
|
||||
singular: middlewaretcp
|
||||
scope: Namespaced
|
||||
versions:
|
||||
- name: v1alpha1
|
||||
schema:
|
||||
openAPIV3Schema:
|
||||
description: MiddlewareTCP is a specification for a MiddlewareTCP resource.
|
||||
properties:
|
||||
apiVersion:
|
||||
description:
|
||||
"APIVersion defines the versioned schema of this representation
|
||||
of an object. Servers should convert recognized schemas to the latest
|
||||
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources"
|
||||
type: string
|
||||
kind:
|
||||
description:
|
||||
"Kind is a string value representing the REST resource this
|
||||
object represents. Servers may infer this from the endpoint the client
|
||||
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds"
|
||||
type: string
|
||||
metadata:
|
||||
type: object
|
||||
spec:
|
||||
description: MiddlewareTCPSpec holds the MiddlewareTCP configuration.
|
||||
properties:
|
||||
ipWhiteList:
|
||||
description: TCPIPWhiteList holds the TCP ip white list configuration.
|
||||
properties:
|
||||
sourceRange:
|
||||
items:
|
||||
type: string
|
||||
type: array
|
||||
type: object
|
||||
type: object
|
||||
required:
|
||||
- metadata
|
||||
- spec
|
||||
type: object
|
||||
served: true
|
||||
storage: true
|
||||
status:
|
||||
acceptedNames:
|
||||
kind: ""
|
||||
plural: ""
|
||||
conditions: []
|
||||
storedVersions: []
|
||||
@@ -1,108 +0,0 @@
|
||||
apiVersion: apiextensions.k8s.io/v1
|
||||
kind: CustomResourceDefinition
|
||||
metadata:
|
||||
annotations:
|
||||
"helm.sh/resource-policy": keep
|
||||
"helm.sh/hook": pre-install,pre-upgrade,pre-rollback
|
||||
controller-gen.kubebuilder.io/version: v0.4.1
|
||||
creationTimestamp: null
|
||||
name: serverstransports.traefik.containo.us
|
||||
spec:
|
||||
group: traefik.containo.us
|
||||
names:
|
||||
kind: ServersTransport
|
||||
listKind: ServersTransportList
|
||||
plural: serverstransports
|
||||
singular: serverstransport
|
||||
scope: Namespaced
|
||||
versions:
|
||||
- name: v1alpha1
|
||||
schema:
|
||||
openAPIV3Schema:
|
||||
description: ServersTransport is a specification for a ServersTransport resource.
|
||||
properties:
|
||||
apiVersion:
|
||||
description:
|
||||
"APIVersion defines the versioned schema of this representation
|
||||
of an object. Servers should convert recognized schemas to the latest
|
||||
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources"
|
||||
type: string
|
||||
kind:
|
||||
description:
|
||||
"Kind is a string value representing the REST resource this
|
||||
object represents. Servers may infer this from the endpoint the client
|
||||
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds"
|
||||
type: string
|
||||
metadata:
|
||||
type: object
|
||||
spec:
|
||||
description:
|
||||
ServersTransportSpec options to configure communication between
|
||||
Traefik and the servers.
|
||||
properties:
|
||||
certificatesSecrets:
|
||||
description: Certificates for mTLS.
|
||||
items:
|
||||
type: string
|
||||
type: array
|
||||
disableHTTP2:
|
||||
description: Disable HTTP/2 for connections with backend servers.
|
||||
type: boolean
|
||||
forwardingTimeouts:
|
||||
description: Timeouts for requests forwarded to the backend servers.
|
||||
properties:
|
||||
dialTimeout:
|
||||
anyOf:
|
||||
- type: integer
|
||||
- type: string
|
||||
description:
|
||||
The amount of time to wait until a connection to
|
||||
a backend server can be established. If zero, no timeout exists.
|
||||
x-kubernetes-int-or-string: true
|
||||
idleConnTimeout:
|
||||
anyOf:
|
||||
- type: integer
|
||||
- type: string
|
||||
description:
|
||||
The maximum period for which an idle HTTP keep-alive
|
||||
connection will remain open before closing itself.
|
||||
x-kubernetes-int-or-string: true
|
||||
responseHeaderTimeout:
|
||||
anyOf:
|
||||
- type: integer
|
||||
- type: string
|
||||
description:
|
||||
The amount of time to wait for a server's response
|
||||
headers after fully writing the request (including its body,
|
||||
if any). If zero, no timeout exists.
|
||||
x-kubernetes-int-or-string: true
|
||||
type: object
|
||||
insecureSkipVerify:
|
||||
description: Disable SSL certificate verification.
|
||||
type: boolean
|
||||
maxIdleConnsPerHost:
|
||||
description:
|
||||
If non-zero, controls the maximum idle (keep-alive) to
|
||||
keep per-host. If zero, DefaultMaxIdleConnsPerHost is used.
|
||||
type: integer
|
||||
rootCAsSecrets:
|
||||
description: Add cert file for self-signed certificate.
|
||||
items:
|
||||
type: string
|
||||
type: array
|
||||
serverName:
|
||||
description: ServerName used to contact the server.
|
||||
type: string
|
||||
type: object
|
||||
required:
|
||||
- metadata
|
||||
- spec
|
||||
type: object
|
||||
served: true
|
||||
storage: true
|
||||
status:
|
||||
acceptedNames:
|
||||
kind: ""
|
||||
plural: ""
|
||||
conditions: []
|
||||
storedVersions: []
|
||||
@@ -1,92 +0,0 @@
|
||||
apiVersion: apiextensions.k8s.io/v1
|
||||
kind: CustomResourceDefinition
|
||||
metadata:
|
||||
annotations:
|
||||
"helm.sh/resource-policy": keep
|
||||
"helm.sh/hook": pre-install,pre-upgrade,pre-rollback
|
||||
controller-gen.kubebuilder.io/version: v0.4.1
|
||||
creationTimestamp: null
|
||||
name: tlsoptions.traefik.containo.us
|
||||
spec:
|
||||
group: traefik.containo.us
|
||||
names:
|
||||
kind: TLSOption
|
||||
listKind: TLSOptionList
|
||||
plural: tlsoptions
|
||||
singular: tlsoption
|
||||
scope: Namespaced
|
||||
versions:
|
||||
- name: v1alpha1
|
||||
schema:
|
||||
openAPIV3Schema:
|
||||
description: TLSOption is a specification for a TLSOption resource.
|
||||
properties:
|
||||
apiVersion:
|
||||
description:
|
||||
"APIVersion defines the versioned schema of this representation
|
||||
of an object. Servers should convert recognized schemas to the latest
|
||||
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources"
|
||||
type: string
|
||||
kind:
|
||||
description:
|
||||
"Kind is a string value representing the REST resource this
|
||||
object represents. Servers may infer this from the endpoint the client
|
||||
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds"
|
||||
type: string
|
||||
metadata:
|
||||
type: object
|
||||
spec:
|
||||
description: TLSOptionSpec configures TLS for an entry point.
|
||||
properties:
|
||||
cipherSuites:
|
||||
items:
|
||||
type: string
|
||||
type: array
|
||||
clientAuth:
|
||||
description:
|
||||
ClientAuth defines the parameters of the client authentication
|
||||
part of the TLS connection, if any.
|
||||
properties:
|
||||
clientAuthType:
|
||||
description:
|
||||
ClientAuthType defines the client authentication
|
||||
type to apply.
|
||||
enum:
|
||||
- NoClientCert
|
||||
- RequestClientCert
|
||||
- VerifyClientCertIfGiven
|
||||
- RequireAndVerifyClientCert
|
||||
type: string
|
||||
secretNames:
|
||||
description:
|
||||
SecretName is the name of the referenced Kubernetes
|
||||
Secret to specify the certificate details.
|
||||
items:
|
||||
type: string
|
||||
type: array
|
||||
type: object
|
||||
curvePreferences:
|
||||
items:
|
||||
type: string
|
||||
type: array
|
||||
maxVersion:
|
||||
type: string
|
||||
minVersion:
|
||||
type: string
|
||||
preferServerCipherSuites:
|
||||
type: boolean
|
||||
sniStrict:
|
||||
type: boolean
|
||||
type: object
|
||||
required:
|
||||
- metadata
|
||||
- spec
|
||||
type: object
|
||||
served: true
|
||||
storage: true
|
||||
status:
|
||||
acceptedNames:
|
||||
kind: ""
|
||||
plural: ""
|
||||
conditions: []
|
||||
storedVersions: []
|
||||
@@ -1,68 +0,0 @@
|
||||
apiVersion: apiextensions.k8s.io/v1
|
||||
kind: CustomResourceDefinition
|
||||
metadata:
|
||||
annotations:
|
||||
"helm.sh/resource-policy": keep
|
||||
"helm.sh/hook": pre-install,pre-upgrade,pre-rollback
|
||||
controller-gen.kubebuilder.io/version: v0.4.1
|
||||
creationTimestamp: null
|
||||
name: tlsstores.traefik.containo.us
|
||||
spec:
|
||||
group: traefik.containo.us
|
||||
names:
|
||||
kind: TLSStore
|
||||
listKind: TLSStoreList
|
||||
plural: tlsstores
|
||||
singular: tlsstore
|
||||
scope: Namespaced
|
||||
versions:
|
||||
- name: v1alpha1
|
||||
schema:
|
||||
openAPIV3Schema:
|
||||
description: TLSStore is a specification for a TLSStore resource.
|
||||
properties:
|
||||
apiVersion:
|
||||
description:
|
||||
"APIVersion defines the versioned schema of this representation
|
||||
of an object. Servers should convert recognized schemas to the latest
|
||||
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources"
|
||||
type: string
|
||||
kind:
|
||||
description:
|
||||
"Kind is a string value representing the REST resource this
|
||||
object represents. Servers may infer this from the endpoint the client
|
||||
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds"
|
||||
type: string
|
||||
metadata:
|
||||
type: object
|
||||
spec:
|
||||
description: TLSStoreSpec configures a TLSStore resource.
|
||||
properties:
|
||||
defaultCertificate:
|
||||
description:
|
||||
DefaultCertificate holds a secret name for the TLSOption
|
||||
resource.
|
||||
properties:
|
||||
secretName:
|
||||
description:
|
||||
SecretName is the name of the referenced Kubernetes
|
||||
Secret to specify the certificate details.
|
||||
type: string
|
||||
required:
|
||||
- secretName
|
||||
type: object
|
||||
required:
|
||||
- defaultCertificate
|
||||
type: object
|
||||
required:
|
||||
- metadata
|
||||
- spec
|
||||
type: object
|
||||
served: true
|
||||
storage: true
|
||||
status:
|
||||
acceptedNames:
|
||||
kind: ""
|
||||
plural: ""
|
||||
conditions: []
|
||||
storedVersions: []
|
||||
@@ -1,289 +0,0 @@
|
||||
apiVersion: apiextensions.k8s.io/v1
|
||||
kind: CustomResourceDefinition
|
||||
metadata:
|
||||
annotations:
|
||||
"helm.sh/resource-policy": keep
|
||||
"helm.sh/hook": pre-install,pre-upgrade,pre-rollback
|
||||
controller-gen.kubebuilder.io/version: v0.4.1
|
||||
creationTimestamp: null
|
||||
name: traefikservices.traefik.containo.us
|
||||
spec:
|
||||
group: traefik.containo.us
|
||||
names:
|
||||
kind: TraefikService
|
||||
listKind: TraefikServiceList
|
||||
plural: traefikservices
|
||||
singular: traefikservice
|
||||
scope: Namespaced
|
||||
versions:
|
||||
- name: v1alpha1
|
||||
schema:
|
||||
openAPIV3Schema:
|
||||
description:
|
||||
TraefikService is the specification for a service (that an IngressRoute
|
||||
refers to) that is usually not a terminal service (i.e. not a pod of servers),
|
||||
as opposed to a Kubernetes Service. That is to say, it usually refers to
|
||||
other (children) services, which themselves can be TraefikServices or Services.
|
||||
properties:
|
||||
apiVersion:
|
||||
description:
|
||||
"APIVersion defines the versioned schema of this representation
|
||||
of an object. Servers should convert recognized schemas to the latest
|
||||
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources"
|
||||
type: string
|
||||
kind:
|
||||
description:
|
||||
"Kind is a string value representing the REST resource this
|
||||
object represents. Servers may infer this from the endpoint the client
|
||||
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds"
|
||||
type: string
|
||||
metadata:
|
||||
type: object
|
||||
spec:
|
||||
description:
|
||||
ServiceSpec defines whether a TraefikService is a load-balancer
|
||||
of services or a mirroring service.
|
||||
properties:
|
||||
mirroring:
|
||||
description:
|
||||
Mirroring defines a mirroring service, which is composed
|
||||
of a main load-balancer, and a list of mirrors.
|
||||
properties:
|
||||
kind:
|
||||
enum:
|
||||
- Service
|
||||
- TraefikService
|
||||
type: string
|
||||
maxBodySize:
|
||||
format: int64
|
||||
type: integer
|
||||
mirrors:
|
||||
items:
|
||||
description:
|
||||
MirrorService defines one of the mirrors of a Mirroring
|
||||
service.
|
||||
properties:
|
||||
kind:
|
||||
enum:
|
||||
- Service
|
||||
- TraefikService
|
||||
type: string
|
||||
name:
|
||||
description:
|
||||
Name is a reference to a Kubernetes Service
|
||||
object (for a load-balancer of servers), or to a TraefikService
|
||||
object (service load-balancer, mirroring, etc). The differentiation
|
||||
between the two is specified in the Kind field.
|
||||
type: string
|
||||
namespace:
|
||||
type: string
|
||||
passHostHeader:
|
||||
type: boolean
|
||||
percent:
|
||||
type: integer
|
||||
port:
|
||||
anyOf:
|
||||
- type: integer
|
||||
- type: string
|
||||
x-kubernetes-int-or-string: true
|
||||
responseForwarding:
|
||||
description:
|
||||
ResponseForwarding holds configuration for
|
||||
the forward of the response.
|
||||
properties:
|
||||
flushInterval:
|
||||
type: string
|
||||
type: object
|
||||
scheme:
|
||||
type: string
|
||||
serversTransport:
|
||||
type: string
|
||||
sticky:
|
||||
description: Sticky holds the sticky configuration.
|
||||
properties:
|
||||
cookie:
|
||||
description:
|
||||
Cookie holds the sticky configuration based
|
||||
on cookie.
|
||||
properties:
|
||||
httpOnly:
|
||||
type: boolean
|
||||
name:
|
||||
type: string
|
||||
sameSite:
|
||||
type: string
|
||||
secure:
|
||||
type: boolean
|
||||
type: object
|
||||
type: object
|
||||
strategy:
|
||||
type: string
|
||||
weight:
|
||||
description:
|
||||
Weight should only be specified when Name references
|
||||
a TraefikService object (and to be precise, one that embeds
|
||||
a Weighted Round Robin).
|
||||
type: integer
|
||||
required:
|
||||
- name
|
||||
type: object
|
||||
type: array
|
||||
name:
|
||||
description:
|
||||
Name is a reference to a Kubernetes Service object
|
||||
(for a load-balancer of servers), or to a TraefikService object
|
||||
(service load-balancer, mirroring, etc). The differentiation
|
||||
between the two is specified in the Kind field.
|
||||
type: string
|
||||
namespace:
|
||||
type: string
|
||||
passHostHeader:
|
||||
type: boolean
|
||||
port:
|
||||
anyOf:
|
||||
- type: integer
|
||||
- type: string
|
||||
x-kubernetes-int-or-string: true
|
||||
responseForwarding:
|
||||
description:
|
||||
ResponseForwarding holds configuration for the forward
|
||||
of the response.
|
||||
properties:
|
||||
flushInterval:
|
||||
type: string
|
||||
type: object
|
||||
scheme:
|
||||
type: string
|
||||
serversTransport:
|
||||
type: string
|
||||
sticky:
|
||||
description: Sticky holds the sticky configuration.
|
||||
properties:
|
||||
cookie:
|
||||
description:
|
||||
Cookie holds the sticky configuration based on
|
||||
cookie.
|
||||
properties:
|
||||
httpOnly:
|
||||
type: boolean
|
||||
name:
|
||||
type: string
|
||||
sameSite:
|
||||
type: string
|
||||
secure:
|
||||
type: boolean
|
||||
type: object
|
||||
type: object
|
||||
strategy:
|
||||
type: string
|
||||
weight:
|
||||
description:
|
||||
Weight should only be specified when Name references
|
||||
a TraefikService object (and to be precise, one that embeds
|
||||
a Weighted Round Robin).
|
||||
type: integer
|
||||
required:
|
||||
- name
|
||||
type: object
|
||||
weighted:
|
||||
description: WeightedRoundRobin defines a load-balancer of services.
|
||||
properties:
|
||||
services:
|
||||
items:
|
||||
description: Service defines an upstream to proxy traffic.
|
||||
properties:
|
||||
kind:
|
||||
enum:
|
||||
- Service
|
||||
- TraefikService
|
||||
type: string
|
||||
name:
|
||||
description:
|
||||
Name is a reference to a Kubernetes Service
|
||||
object (for a load-balancer of servers), or to a TraefikService
|
||||
object (service load-balancer, mirroring, etc). The differentiation
|
||||
between the two is specified in the Kind field.
|
||||
type: string
|
||||
namespace:
|
||||
type: string
|
||||
passHostHeader:
|
||||
type: boolean
|
||||
port:
|
||||
anyOf:
|
||||
- type: integer
|
||||
- type: string
|
||||
x-kubernetes-int-or-string: true
|
||||
responseForwarding:
|
||||
description:
|
||||
ResponseForwarding holds configuration for
|
||||
the forward of the response.
|
||||
properties:
|
||||
flushInterval:
|
||||
type: string
|
||||
type: object
|
||||
scheme:
|
||||
type: string
|
||||
serversTransport:
|
||||
type: string
|
||||
sticky:
|
||||
description: Sticky holds the sticky configuration.
|
||||
properties:
|
||||
cookie:
|
||||
description:
|
||||
Cookie holds the sticky configuration based
|
||||
on cookie.
|
||||
properties:
|
||||
httpOnly:
|
||||
type: boolean
|
||||
name:
|
||||
type: string
|
||||
sameSite:
|
||||
type: string
|
||||
secure:
|
||||
type: boolean
|
||||
type: object
|
||||
type: object
|
||||
strategy:
|
||||
type: string
|
||||
weight:
|
||||
description:
|
||||
Weight should only be specified when Name references
|
||||
a TraefikService object (and to be precise, one that embeds
|
||||
a Weighted Round Robin).
|
||||
type: integer
|
||||
required:
|
||||
- name
|
||||
type: object
|
||||
type: array
|
||||
sticky:
|
||||
description: Sticky holds the sticky configuration.
|
||||
properties:
|
||||
cookie:
|
||||
description:
|
||||
Cookie holds the sticky configuration based on
|
||||
cookie.
|
||||
properties:
|
||||
httpOnly:
|
||||
type: boolean
|
||||
name:
|
||||
type: string
|
||||
sameSite:
|
||||
type: string
|
||||
secure:
|
||||
type: boolean
|
||||
type: object
|
||||
type: object
|
||||
type: object
|
||||
type: object
|
||||
required:
|
||||
- metadata
|
||||
- spec
|
||||
type: object
|
||||
served: true
|
||||
storage: true
|
||||
status:
|
||||
acceptedNames:
|
||||
kind: ""
|
||||
plural: ""
|
||||
conditions: []
|
||||
storedVersions: []
|
||||
@@ -1,68 +0,0 @@
|
||||
---
|
||||
sidebar_position: 1
|
||||
---
|
||||
|
||||
# Installing Traefik
|
||||
|
||||
Within TrueCharts, our aim is to make it as easy as possible to secure your Apps.
|
||||
To support this, we supply a separate Traefik "ingress" app, which has been pre-configured to provide secure and fast connections.
|
||||
|
||||
## How-To
|
||||
|
||||
### TrueNAS WebUI
|
||||
|
||||
In order to set up Traefik, you will be required to change the default TrueNAS WebUI access ports.
|
||||
These ports are by default set to port `80` for HTTP and port `443` for HTTPS.
|
||||
This is necessary as we will be setting Traefik up to function as a reverse proxy, and receive traffic on these host ports.
|
||||
|
||||
In the TrueNAS Menu, navigate to **System** > **General**. Click the **Settings** button at the top right of the GUI component.
|
||||
Under these **GUI Settings**, change:
|
||||
|
||||
- Web Interface HTTP Port to port `81`
|
||||
- Web Interface HTTPS Port to port `444`.
|
||||
|
||||
Click **Save** to save your changes. The WebUI will now prompt you to restart the web server service,
|
||||
after which you will be automatically redirected to your dashboard through one of the new ports.
|
||||
If you are not prompted to restart the web server service, you may restart the machine and manually navigate
|
||||
to the WebUI address followed by one of the new ports eg. `truenas.local:81`.
|
||||
|
||||
:::info
|
||||
|
||||
These are the recommended ports for this procedure. Using different ports may require some
|
||||
changes to your configuration that are not covered in this tutorial.
|
||||
|
||||
:::
|
||||
|
||||
:::warning
|
||||
|
||||
Do not skip this step. Neglecting to change the default ports active may cause your WebUI to become inaccessible after the following step.
|
||||
Ensure you are accessing your WebUI from the new ports before proceeding.
|
||||
|
||||
:::
|
||||
|
||||
### Installing the Traefik Scale App
|
||||
|
||||
In the TrueNAS Menu, navigate to **Apps** > **Available Applications**. Use the search bar to search for or manually
|
||||
find the Traefik app in the list of apps, and click **Install**
|
||||
|
||||
The setup of Traefik is relatively straight-forward. Most of the settings remain unchanged from default, except for these two:
|
||||
|
||||
- **Application Name**: Enter a name for your app. You may use simply _traefik_ for this field.
|
||||
- **Networking and Services**: Under TCP Services, find and change:
|
||||
- **web Entrypoint Configuration** > **Entrypoints port:**
|
||||
Change port `9080` to port `80`
|
||||
- **websecure Entrypoint Configuration** > **Entrypoints port:**
|
||||
Change port `9433` to port `433`
|
||||
|
||||
Continue to section 12, and select **Next**. Traefik will now be installed.
|
||||
After installation you can access the Traefik dashboard using your host IP address followed by `:9000`, or by simply clicking "Web Portal" on the application's entry under **Apps** > **Installed Applications**.
|
||||
|
||||
:::note
|
||||
|
||||
Traefik is part of the `stable` train, so make sure you have it enabled as specified in [Step 1](https://truecharts.org/manual/Quick-Start%20Guides/01-Adding-TrueCharts/) of our Quick Start Guides
|
||||
|
||||
:::
|
||||
|
||||
## Video Guide
|
||||
|
||||
<iframe width="560" height="315" src="https://www.youtube.com/embed/bWNPfrKjawI" title="YouTube video player" frameBorder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowFullScreen></iframe>
|
||||
|
Before Width: | Height: | Size: 64 KiB |
|
Before Width: | Height: | Size: 14 KiB |
|
Before Width: | Height: | Size: 51 KiB |
|
Before Width: | Height: | Size: 39 KiB |
@@ -1,44 +0,0 @@
|
||||
# Theme Park
|
||||
|
||||
Theme park is a middleware to inject [supported stylesheets (css)](https://docs.theme-park.dev/theme-options)
|
||||
into [supported apps](https://docs.theme-park.dev/themes).
|
||||
|
||||
So let's see how to do that.
|
||||
|
||||
Note that this will only work on apps you have enabled `ingress`, and only when accessing them via the URL.
|
||||
Will NOT work if you access them via `IP:PORT`.
|
||||
|
||||
## Creating the middleware on traefik
|
||||
|
||||
Edit your existing traefik install (or install fresh if you don't have it installed)
|
||||
|
||||
- Scroll down to `theme-park`
|
||||
- Click <kbd>Add</kbd>
|
||||
- Name: `guactheme` (Any name you want, remember it, you will need it later)
|
||||
- App Name: `guacamole` (Replace with the name of the app you want to theme)
|
||||
- Theme Name: `plex` (Replace wit the theme you want to apply)
|
||||
- Base URL: (Leave the default, unless you plan to use a self hosted theme provider)
|
||||
- Click <kbd>Save</kbd>
|
||||
|
||||

|
||||
|
||||
> Keep in mind that if you decide to use a self hosted theme provider, it will need to have enabled ingress.
|
||||
> Also use the external URL, not the internal, as the client will need to access that theme provider to fetch the
|
||||
> stylesheets.
|
||||
|
||||
## Applying the theme to the app
|
||||
|
||||
Edit your existing _App_, in this example we will use `guacamole-client`.
|
||||
|
||||
- Scroll down to `Treafik MIddlewares` (Remember, you need to have `ingress` enabled)
|
||||
- Click <kbd>Add</kbd>
|
||||
- Name: `guactheme` (Replace with the name you gave to your middleware on the previous step)
|
||||
- Click <kbd>Save</kbd>
|
||||
|
||||

|
||||
|
||||
You are ready!
|
||||
|
||||
| Before | After |
|
||||
| :---------------------------------------------------: | :-------------------------------------------------: |
|
||||
|  |  |
|
||||