Files
truecharts/charts/enterprise/blocky/docs/installation-notes.md
T
José Luis Cánovas f7f1ee8d12 Update blocky installation-notes.md (#9467)
**Description**

The k8s-gateway section was a little confusing. Adding more details and
examples to docs.

⚒️ Fixes 

**⚙️ Type of change**

- [ ] ⚙️ Feature/App addition
- [ ] 🪛 Bugfix
- [ ] ⚠️ Breaking change (fix or feature that would cause existing
functionality to not work as expected)
- [ ] 🔃 Refactor of current code
- [x] Docs update

**🧪 How Has This Been Tested?**


**📃 Notes:**

**✔️ Checklist:**

- [ ] ⚖️ My code follows the style guidelines of this project
- [ ] 👀 I have performed a self-review of my own code
- [ ] #️⃣ I have commented my code, particularly in hard-to-understand
areas
- [ ] 📄 I have made corresponding changes to the documentation
- [ ] ⚠️ My changes generate no new warnings
- [ ] 🧪 I have added tests to this description that prove my fix is
effective or that my feature works
- [ ] ⬆️ I increased versions for any altered app according to semantic
versioning

** App addition**

If this PR is an app addition please make sure you have done the
following.

- [ ] 🪞 I have opened a PR on
[truecharts/containers](https://github.com/truecharts/containers) adding
the container to TrueCharts mirror repo.
- [ ] 🖼️ I have added an icon in the Chart's root directory called
`icon.png`

---

_Please don't blindly check all the boxes. Read them and only check
those that apply.
Those checkboxes are there for the reviewer to see what is this all
about and
the status of this PR with a quick glance._

---------

Signed-off-by: José Luis Cánovas <jlcs-es@users.noreply.github.com>
Signed-off-by: Kjeld Schouten <kjeld@schouten-lebbing.nl>
Co-authored-by: Kjeld Schouten <kjeld@schouten-lebbing.nl>
2023-06-08 11:27:25 +02:00

3.5 KiB

Installation notes

Default Configuration

The following config will be pre-configured and merged with any config you manually add to blockyConfig option in values.yaml:

Redis (always present):

redis:
  address: $redis_host:6379
  password: $redis_pass
  database: 0
  required: true
  connectionAttempts: 10
  connectionCooldown: 3s

Prometheus (Only present if enabled):

prometheus:
  enable: true
  path: /metrics

Configuration Instructions

We offer two styles of configuration, both can be directly applied in values.yaml, without the need of persistence or editing configmaps. Besides this, the TrueNAS SCALE App exposes all config options directly in the GUI, except the Redis and Prometheus settings which are automatically configured.

TrueNAS SCALE

All configuration options are directly reflected in the TrueNAS SCALE App GUI and can be edited as you see fit. The App is, by default, configured to be high available so editing and updates should not cause needless downtime.

Native Helm

There are two ways of editing configuration, we will call them List Style and Blocky Style.

  • List Style configuration has been developed by us to optimise for display in the TrueNAS SCALE WebUI. However: It can also be completely edited in values.yaml. In this case each setting has been pre-configured and is documented in values.yaml (available on github)
  • Blocky Style configuration, can be directly added below the blockyConfig object in values.yaml, please make sure the config is correctly indented

We would advice using List Style when possible as that is the most tested configuration style. But for things like migration some users might prefer to use Blocky Style instead

Adding config by mounting files

Adding additional configuration files is not possible, as this feature has not been released yet.

However: We have verified if this would work and we will have to conclude that when 0.20 is released, we will not support multiple config files, as those will inherently conflict with our design. Due to duplicate keys breaking blocky. With all the config already available in values.yaml, we do not really see a usecase for this on kubernetes. Apart from this, manually mounting configfiles might negatively affect High Availability and Rollback on kubernetes.

You can also mount custom Whitelist/Blacklist files, using persistence or, in SCALE GUI, Additional Storage and enter the path in your whitelist or blacklist settings manually However: this negatively affects rollback and high availability, so we highly advice against doing this.

k8s-gateway

Our blocky Chart/App includes build-in compatibility for k8s_gateway. This tool can be used to achieve Split DNS to ensure devices on your local network connect directly to the LAN IP of any Charts/Apps using Ingress, instead of via the outside world or, in a lot of cases, having a bunch of connectivity issues.

To setup k8s_gateway add your root domain(s) to the k8s_gateway section domains list, e.g. mydomain.com. From that point onwards we will take care to automatically apply the required conditional settings in blocky as well. This will automatically include all your app subdomains exposed via Ingress, e.g. jellyfin.mydomain.com.

Please be mindfull that using Blocky Style configuration, using the blockyConfig object in values.yaml, might override this automatic setup.