> For the complete documentation index, see [llms.txt](https://docs.human-connection.org/human-connection/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.human-connection.org/human-connection/deployment/human-connection.md).

# Human Connection

Deploying Human Connection with kubernetes is straight forward. All you have to do is to change certain parameters, like domain names and API keys, then you just apply our provided configuration files to your cluster.

## Configuration

Change into the `./deployment` directory and copy our provided templates:

```bash
# in folder deployment/human-connection/
$ cp templates/secrets.template.yaml ./secrets.yaml
$ cp templates/configmap.template.yaml ./configmap.yaml
```

Change the `configmap.yaml` in the `./deployment/human-connection` directory as needed, all variables will be available as environment variables in your deployed kubernetes pods.

Probably you want to change this environment variable to your actual domain:

```
# in configmap.yaml
CLIENT_URI: "https://nitro-staging.human-connection.org"
```

If you want to edit secrets, you have to `base64` encode them. See [kubernetes documentation](https://kubernetes.io/docs/concepts/configuration/secret/#creating-a-secret-manually).

```bash
# example how to base64 a string:
$ echo -n 'admin' | base64
YWRtaW4=
```

Those secrets get `base64` decoded and are available as environment variables in your deployed kubernetes pods.

## Create a namespace

```bash
# in folder deployment/
$ kubectl apply -f namespace.yaml
```

If you have a [kubernets dashboard](/human-connection/deployment/digital-ocean/dashboard.md) deployed you should switch to namespace `human-connection` in order to monitor the state of your deployments.

## Create persistent volumes

While the deployments and services can easily be restored, simply by deleting and applying the kubernetes configurations again, certain data is not that easily recovered. Therefore we separated persistent volumes from deployments and services. There is a [dedicated section](/human-connection/deployment/volumes.md). Create those persistent volumes once before you apply the configuration.

## Apply the configuration

```bash
# in folder deployment/
$ kubectl apply -f human-connection/
```

This can take a while because kubernetes will download the docker images. Sit back and relax and have a look into your kubernetes dashboard. Wait until all pods turn green and they don't show a warning `Waiting: ContainerCreating` anymore.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.human-connection.org/human-connection/deployment/human-connection.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
