Advanced usage
Some edge use-cases might not have been included in the previous installation documentation, for clarity purposes. You may find some of them below.
Running behind a Docker registry proxy
If your installation environment requires you to whitelist images that can be pulled by the Kubernetes cluster, you must whitelist the registry.evertrust.io/horizon
and registry.evertrust.io/horizon-upgrade
images.
Leases
To ensure clustering issues get resolved as fast as possible, Horizon can use a CRD (Custom Resource Definition) named Lease
(akka.io/v1/leases
). We strongly recommend that you use this mechanism, however it implies that you have the necessary permissions to install CRDs onto your server. In case you don’t, the feature can be disabled by passing the --skip-crds
flag to the Helm command when installing the chart, and setting the leases.enabled
key to false
.
If you want to manually install the CRD, you can check the crds/leases.yml
file.
Injecting extra configuration
Extra Horizon configuration can be injected to the bundled application.conf
file to modify low-level behavior of Horizon. This should be used carefully as it may cause things to break. To do so, just mount a folder in the Horizon container at /opt/horizon/etc/
containing an application.conf
file.
This can be done with the following edits to your values.yaml
file:
extraVolumes:
- name: additional-config
configMap:
name: additional-config
extraVolumeMounts:
- name: additional-config
mountPath: /opt/horizon/etc
Where the additional-config
configmap contains a single key with your custom configuration:
apiVersion: v1
kind: ConfigMap
data:
application.conf: |-
play.server.http.port = 9999
Extra configurations are included at the end of the config file, overriding any previously set config value.