chore: update docs

This commit is contained in:
Aarnav Tale 2025-04-02 17:03:58 -04:00
parent 8596a56375
commit 090dec1ca6
No known key found for this signature in database
4 changed files with 28 additions and 5 deletions

View File

@ -16,6 +16,16 @@ Requirements:
- [PNPM](https://pnpm.io/installation) 10.x - [PNPM](https://pnpm.io/installation) 10.x
- A finished configuration file (config.yaml) - A finished configuration file (config.yaml)
Before installing Headplane, ensure that `/var/lib/headplane` exists and is
writable by the user that will run the Headplane service. You can create this
directory with the following command:
```sh
sudo mkdir -p /var/lib/headplane
# Replace headplane:headplane with the appropriate user and group if not root.
sudo chown -R headplane:headplane /var/lib/headplane
```
Clone the Headplane repository, install dependencies, and build the project: Clone the Headplane repository, install dependencies, and build the project:
```sh ```sh
git clone https://github.com/tale/headplane git clone https://github.com/tale/headplane

View File

@ -7,6 +7,10 @@ Headplane uses a configuration file to manage its settings
for a the file at `/etc/headplane/config.yaml`. This can be changed using the for a the file at `/etc/headplane/config.yaml`. This can be changed using the
**`HEADPLANE_CONFIG_PATH`** environment variable to point to a different location. **`HEADPLANE_CONFIG_PATH`** environment variable to point to a different location.
Headplane also stores stuff in the `/var/lib/headplane` directory by default.
This can be configured on a per-section basis in the configuration file, but
it is very important this directory is persistent and writable by Headplane.
## Environment Variables ## Environment Variables
It is also possible to override the configuration file using environment variables. It is also possible to override the configuration file using environment variables.
These changes get merged *after* the configuration file is loaded, so they will take precedence. These changes get merged *after* the configuration file is loaded, so they will take precedence.

View File

@ -34,7 +34,7 @@ Here is what a sample Docker Compose deployment would look like:
services: services:
headplane: headplane:
# I recommend you pin the version to a specific release # I recommend you pin the version to a specific release
image: ghcr.io/tale/headplane:0.5.1 image: ghcr.io/tale/headplane:0.5.7
container_name: headplane container_name: headplane
restart: unless-stopped restart: unless-stopped
ports: ports:
@ -44,10 +44,13 @@ services:
# This should match headscale.config_path in your config.yaml # This should match headscale.config_path in your config.yaml
- './headscale-config/config.yaml:/etc/headscale/config.yaml' - './headscale-config/config.yaml:/etc/headscale/config.yaml'
# Headplane stores its data in this directory
- './headplane-data:/var/lib/headplane'
# If you are using the Docker integration, mount the Docker socket # If you are using the Docker integration, mount the Docker socket
- '/var/run/docker.sock:/var/run/docker.sock:ro' - '/var/run/docker.sock:/var/run/docker.sock:ro'
headscale: headscale:
image: headscale/headscale:0.25.0 image: headscale/headscale:0.25.1
container_name: headscale container_name: headscale
restart: unless-stopped restart: unless-stopped
command: serve command: serve
@ -148,7 +151,7 @@ spec:
serviceAccountName: default serviceAccountName: default
containers: containers:
- name: headplane - name: headplane
image: ghcr.io/tale/headplane:0.5.1 image: ghcr.io/tale/headplane:0.5.7
env: env:
# Set these if the pod name for Headscale is not static # Set these if the pod name for Headscale is not static
# We will use the downward API to get the pod name instead # We will use the downward API to get the pod name instead
@ -161,9 +164,11 @@ spec:
volumeMounts: volumeMounts:
- name: headscale-config - name: headscale-config
mountPath: /etc/headscale mountPath: /etc/headscale
- name: headplane-data
mountPath: /var/lib/headplane
- name: headscale - name: headscale
image: headscale/headscale:0.25.0 image: headscale/headscale:0.25.1
command: ['serve'] command: ['serve']
volumeMounts: volumeMounts:
- name: headscale-data - name: headscale-data
@ -175,6 +180,9 @@ spec:
- name: headscale-data - name: headscale-data
persistentVolumeClaim: persistentVolumeClaim:
claimName: headscale-data claimName: headscale-data
- name: headplane-data
persistentVolumeClaim:
claimName: headplane-data
- name: headscale-config - name: headscale-config
persistentVolumeClaim: persistentVolumeClaim:
claimName: headscale-config claimName: headscale-config

View File

@ -19,13 +19,14 @@ Here is what a sample Docker Compose deployment would look like:
services: services:
headplane: headplane:
# I recommend you pin the version to a specific release # I recommend you pin the version to a specific release
image: ghcr.io/tale/headplane:0.5.1 image: ghcr.io/tale/headplane:0.5.7
container_name: headplane container_name: headplane
restart: unless-stopped restart: unless-stopped
ports: ports:
- '3000:3000' - '3000:3000'
volumes: volumes:
- './config.yaml:/etc/headplane/config.yaml' - './config.yaml:/etc/headplane/config.yaml'
- './headplane-data:/var/lib/headplane'
``` ```
This will result in the Headplane UI being available at the `/admin` path of the This will result in the Headplane UI being available at the `/admin` path of the