docs: add application environment variables (#2577)

* docs: updated installation env vars and runtime values references

* docs: fix content

* docs: update content

* Update table of contents, and refactored docs.

* Fixed capitalization.

* batch update to fix readability

* refactored declarative env var

* Updated translation.

* Updated based on suggestions.

* Updated based on suggestions.

---------

Co-authored-by: yajing wang <413741312@qq.com>
This commit is contained in:
Meow33
2026-03-05 17:52:22 +08:00
committed by GitHub
parent 480cecfe84
commit 776848d2e2
28 changed files with 1294 additions and 350 deletions

View File

@@ -15,128 +15,147 @@ To customize the installation process, you can set the environment variables bef
export KUBE_TYPE=k8s \
&& curl -sSfL https://olares.sh | bash -
```
Or, if you have already downloaded the installation script `install.sh`:
```bash
# Specify Kubernetes (k8s) instead of k3s
export KUBE_TYPE=k8s && bash install.sh
```
Both methods achieve the same result. The environment variable `KUBE_TYPE` will be passed to the script, and the script will use it to modify its behavior.
Both methods achieve the same result. The environment variable `KUBE_TYPE` is passed to the installation script and modifies its behavior accordingly.
## Environment variables reference
The section lists all the environment variables, along with their default values, optional values, and descriptions. Configure them as needed.
The section lists all the environment variables, along with their default values, optional values, and descriptions. Configure them as needed.
### `CLOUDFLARE_ENABLE`
Specifies whether to enable the Cloudflare proxy.
### CLOUDFLARE_ENABLE
Specifies whether to enable the Cloudflare proxy.
- **Valid values**:
- `0` (disable)
- `1` (enable)
- **Default**: `0`
### FRP_AUTH_METHOD
Sets the FRP authentication method.
- **Valid values**:
- `jws `
- `token` (requires `FRP_AUTH_TOKEN`)
- (empty) No authentication
- **Default**: `jws`
### FRP_AUTH_TOKEN
Specifies the token for FRP communication (required if `FRP_AUTH_METHOD=token`).
- **Valid values**: Any non-empty string
- **Default**: None
### FRP_ENABLE
Specifies whether to enable FRP for internal network tunneling. Requires additional FRP-related variables if using a custom server.
- **Valid values**:
- `0` (disable)
- `1` (enable)
- **Default**: `0`
### FRP_PORT
Specifies the FRP server's listening port.
- **Valid values**: An integer in the range `165535`
- **Default**: `7000` (if not set or set to `0`)
### JUICEFS
Installs [JuiceFS](https://juicefs.com/) alongside Olares.
- **Valid values**: `1`
- **Default**: None (does not install JuiceFS if not set)
### KUBE_TYPE
Determines the Kubernetes distribution to install.
- **Valid values**:
- `k8s`(full Kubernetes)
- `k3s` (lightweight Kubernetes)
- **Default**: `k3s`
### LOCAL_GPU_ENABLE
Specifies whether to enable GPU support and install related drivers.
- **Valid values**:
- `0` (disable)
- `1` (enable)
- **Default**: `0`
### LOCAL_GPU_SHARE
Specifies whether to enable GPU sharing. Applies only if GPU is enabled.
- **Valid values**:
- `0` (disable)
- `1` (enable)
- **Default**: `0`
- `0` (disable)
- `1` (enable)
- **Default**: `0`
### `FRP_AUTH_METHOD`
Sets the FRP authentication method.
- **Valid values**:
- `jws`
- `token` (requires `FRP_AUTH_TOKEN`)
- (empty) No authentication
- **Default**: `jws`
### NVIDIA_CONTAINER_REPO_MIRROR
### `FRP_AUTH_TOKEN`
Specifies the token for FRP communication (required if `FRP_AUTH_METHOD=token`).
- **Valid values**: Any non-empty string
- **Default**: None
Specifies the APT repository mirror for installing NVIDIA Container Toolkit.
- **Valid values**:
- `nvidia.github.io`
- `mirrors.ustc.edu.cn` (recommended for better connectivity in mainland China)
- **Default**: `nvidia.github.io`
### `FRP_ENABLE`
Specifies whether to enable FRP for internal network tunneling. Requires additional FRP-related variables if using a custom server.
- **Valid values**:
- `0` (disable)
- `1` (enable)
- **Default**: `0`
### PREINSTALL
### `FRP_PORT`
Specifies the FRP server's listening port.
- **Valid values**: An integer in the range `165535`
- **Default**: `7000` (if not set or set to `0`)
Runs only the pre-installation phase (system dependency setup) without proceeding to the full Olares installation.
- **Valid values**: `1`
- **Default**: None (performs full installation if not set)
### `JUICEFS`
Installs [JuiceFS](https://juicefs.com/) alongside Olares.
- **Valid values**: `1`
- **Default**: None (does not install JuiceFS if not set)
### PUBLICLY_ACCESSIBLE
### `KUBE_TYPE`
Determines the Kubernetes distribution to install.
- **Valid values**:
- `k8s` (full Kubernetes)
- `k3s` (lightweight Kubernetes)
- **Default**: `k3s`
### `LOCAL_GPU_ENABLE`
Specifies whether to enable GPU support and install related drivers.
- **Valid values**:
- `0` (disable)
- `1` (enable)
- **Default**: `0`
### `LOCAL_GPU_SHARE`
Specifies whether to enable GPU sharing. Applies only if GPU is enabled.
- **Valid values**:
- `0` (disable)
- `1` (enable)
- **Default**: `0`
### `NVIDIA_CONTAINER_REPO_MIRROR`
Specifies the APT repository mirror for installing NVIDIA Container Toolkit.
- **Valid values**:
- `nvidia.github.io`
- `mirrors.ustc.edu.cn` (recommended for better connectivity in mainland China)
- **Default**: `nvidia.github.io`
### `PREINSTALL`
Runs only the pre-installation phase (system dependency setup) without proceeding to the full Olares installation.
- **Valid values**: `1`
- **Default**: None (performs full installation if not set)
### `PUBLICLY_ACCESSIBLE`
Explicitly specifies that this machine is accessible publicly on the internet, and a reverse proxy should not be used.
- **Valid values**:
- `0` (false)
- `1` (true)
- **Default**: `0`
- `0` (false)
- `1` (true)
- **Default**: `0`
### REGISTRY_MIRRORS
### `REGISTRY_MIRRORS`
Specifies a custom Docker registry mirror for faster image pulls.
- **Valid values**: `https://mirrors.olares.com` or any other valid URL
- **Default**: `https://registry-1.docker.io`
Specifies a custom Docker registry mirror for faster image pulls.
- **Valid values**: `https://mirrors.olares.com` or any other valid URL
- **Default**: `https://registry-1.docker.io`
### `TERMINUS_IS_CLOUD_VERSION`
Marks the machine explicitly as a cloud instance.
- **Valid values**: `true`
- **Default**: None
### TERMINUS_IS_CLOUD_VERSION
### `TERMINUS_OS_DOMAINNAME`
Sets the domain name before installation to skip the interactive prompt.
- **Valid values**: Any valid domain name
- **Default**: None (prompts for domain name if not set)
Marks the machine explicitly as a cloud instance.
- **Valid values**: `true`
- **Default**: None
### `TERMINUS_OS_EMAIL`
Specifies the email address to use instead of a generated one.
- **Valid values**: Any valid email address
- **Default**: None (a temporary email is generated if not set)
### TERMINUS_OS_DOMAINNAME
### `TERMINUS_OS_PASSWORD`
Specifies the password to use instead of a generated one.
- **Valid values**: A valid password with 632 characters
- **Default**: A randomly generated 8-character password
Sets the domain name before installation to skip the interactive prompt.
- **Valid values**: Any valid domain name
- **Default**: None (prompts for domain name if not set)
### `TERMINUS_OS_USERNAME`
Specifies the username before installation to skip the interactive prompt.
- **Valid values**: Any valid username (2250 characters, excluding reserved keywords)
- **Default**: None (prompts for username if not set)
- **Validation**: Reserved keywords include `user`, `system`, `space`, `default`, `os`, `kubesphere`, `kube`, `kubekey`, `kubernetes`, `gpu`, `tapr`, `bfl`, `bytetrade`, `project`, `pod`
### TERMINUS_OS_EMAIL
### `TOKEN_MAX_AGE`
Sets the maximum validity period for a token (in seconds).
- **Valid values**: Any integer (in seconds)
Specifies the email address to use instead of a generated one.
- **Valid values**: Any valid email address
- **Default**: None (a temporary email is generated if not set)
### TERMINUS_OS_PASSWORD
Specifies the password to use instead of a generated one.
- **Valid values**: A valid password with 632 characters
- **Default**: A randomly generated 8-character password
### TERMINUS_OS_USERNAME
Specifies the username before installation to skip the interactive prompt.
- **Valid values**: Any valid username (2250 characters, excluding reserved keywords)
- **Default**: None (prompts for username if not set)
- **Validation**: Reserved keywords include `user`, `system`, `space`, `default`, `os`, `kubesphere`, `kube`, `kubekey`, `kubernetes`, `gpu`, `tapr`, `bfl`, `bytetrade`, `project`, `pod`.
### TOKEN_MAX_AGE
Sets the maximum validity period for a token (in seconds).
- **Valid values**: Any integer (in seconds)
- **Default**: `31536000` (365 days)