On-Prem Deployment Installation

Application Security Files#

For application to run, we need some files for security purpose:

  1. GitHub token from middleware team (to read our images)
  2. Owner login credentials: Set email and password in values as defined in sample file
  3. Create folder structure:
1mw-helm/
2├── auth/
3└── haproxy/
4└── values-override.yaml
  1. Private/public key for auth in mw-helm/auth:
1# Generate the private key
2openssl genrsa -out auth_sign.pem 2048
3
4# Generate the corresponding public key
5openssl rsa -in auth_sign.pem -pubout -out auth_sign_public.pem

Put these as values in values-override.yaml as provided in sample 5. SSL certificate for domain which we will put in haproxy and that we will point to middleware:

  • Put in mw-helm/haproxy:
    • mw.crt
    • mw.crt.key

Configuration Files#

  • Fill in required details for values as provided in samples:
    • Use values-azure.sample.yaml if you want to use storage as Azure.
    • Use values-aws.sample.yaml if you want to use storage as AWS S3.
    • Put this in mw-helm/values-override.yaml

Helm Registry Login#

We need to do helm registry login to ghcr.io where middleware's chart is hosted:

1helm registry login ghcr.io

Use username and token provided by middleware's team.

Installation#

Once all above steps are done, proceed with installation:

1helm install mw oci://ghcr.io/middleware-labs/helm-charts/mw-infra/middleware \
2  --namespace mw \
3  --create-namespace \
4  -f values-override.yaml \
5  --set-file secrets.appConfiguration.authKeys.privateKey=./auth/auth_sign.pem \
6  --set-file secrets.appConfiguration.authKeys.publicKey=./auth/auth_sign_public.pem \
7  --set-file haproxy.ssl.certificate=./haproxy/mw.crt \
8  --set-file haproxy.ssl.privateKey=./haproxy/mw.crt.key

Need assistance or want to learn more about Middleware? Contact our support team at [email protected] or join our Slack channel.