mirror of
https://github.com/gethomepage/homepage.git
synced 2025-12-05 21:47:48 +01:00
Merge branch 'dev'
This commit is contained in:
79
docs/configs/proxmox.md
Normal file
79
docs/configs/proxmox.md
Normal file
@@ -0,0 +1,79 @@
|
||||
---
|
||||
title: Proxmox
|
||||
description: Proxmox Configuration
|
||||
---
|
||||
|
||||
The Proxmox connection is configured in the `proxmox.yaml` file. See [Create token](#create-token) section below for details on how to generate the required API token.
|
||||
|
||||
```yaml
|
||||
url: https://proxmox.host.or.ip:8006
|
||||
token: username@pam!Token ID
|
||||
secret: secret
|
||||
```
|
||||
|
||||
## Services
|
||||
|
||||
Once the Proxmox connection is configured, individual services can be configured to pull statistics of VMs or LXCs. Only CPU and Memory are currently supported.
|
||||
|
||||
### Configuration Options
|
||||
|
||||
- `proxmoxNode`: The name of the Proxmox node where your VM/LXC is running
|
||||
- `proxmoxVMID`: The ID of the Proxmox VM or LXC container
|
||||
- `proxmoxType`: (Optional) The type of Proxmox virtual machine. Defaults to `qemu` for VMs, but can be set to `lxc` for LXC containers
|
||||
|
||||
#### Examples
|
||||
|
||||
For a QEMU VM (default):
|
||||
|
||||
```yaml
|
||||
- HomeAssistant:
|
||||
icon: home-assistant.png
|
||||
href: http://homeassistant.local/
|
||||
description: Home automation
|
||||
proxmoxNode: pve
|
||||
proxmoxVMID: 101
|
||||
# proxmoxType: qemu # This is the default, so it can be omitted
|
||||
```
|
||||
|
||||
For an LXC container:
|
||||
|
||||
```yaml
|
||||
- Nginx:
|
||||
icon: nginx.png
|
||||
href: http://nginx.local/
|
||||
description: Web server
|
||||
proxmoxNode: pve
|
||||
proxmoxVMID: 200
|
||||
proxmoxType: lxc
|
||||
```
|
||||
|
||||
## Create token
|
||||
|
||||
You will need to generate an API Token for new or an existing user. Here is an example of how to do this for a new user.
|
||||
|
||||
1. Navigate to the Proxmox portal, click on Datacenter
|
||||
2. Expand Permissions, click on Groups
|
||||
3. Click the Create button
|
||||
4. Name the group something informative, like api-ro-users
|
||||
5. Click on the Permissions "folder"
|
||||
6. Click Add -> Group Permission
|
||||
- Path: /
|
||||
- Group: group from bullet 4 above
|
||||
- Role: PVEAuditor
|
||||
- Propagate: Checked
|
||||
7. Expand Permissions, click on Users
|
||||
8. Click the Add button
|
||||
- User name: something informative like `api`
|
||||
- Realm: Linux PAM standard authentication
|
||||
- Group: group from bullet 4 above
|
||||
9. Expand Permissions, click on API Tokens
|
||||
10. Click the Add button
|
||||
- User: user from bullet 8 above
|
||||
- Token ID: something informative like the application or purpose like `homepage`
|
||||
- Privilege Separation: Checked
|
||||
11. Go back to the "Permissions" menu
|
||||
12. Click Add -> API Token Permission
|
||||
- Path: /
|
||||
- API Token: select the Token ID created in Step 10
|
||||
- Role: PVE Auditor
|
||||
- Propagate: Checked
|
||||
@@ -22,6 +22,7 @@ widget:
|
||||
service_group: Media # group name where widget exists
|
||||
service_name: Sonarr # service name for that widget
|
||||
color: teal # optional - defaults to pre-defined color for the service (teal for sonarr)
|
||||
baseUrl: https://sonarr.domain.url # optional - adds links to sonarr/radarr pages
|
||||
params: # optional - additional params for the service
|
||||
unmonitored: true # optional - defaults to false, used with *arr stack
|
||||
- type: ical # Show calendar events from another service
|
||||
|
||||
@@ -17,6 +17,7 @@ widget:
|
||||
enableBlocks: true # optional, defaults to false
|
||||
enableNowPlaying: true # optional, defaults to true
|
||||
enableUser: true # optional, defaults to false
|
||||
enableMediaControl: false # optional, defaults to true
|
||||
showEpisodeNumber: true # optional, defaults to false
|
||||
expandOneStreamToTwoRows: false # optional, defaults to true
|
||||
```
|
||||
|
||||
@@ -5,11 +5,18 @@ description: Grafana Widget Configuration
|
||||
|
||||
Learn more about [Grafana](https://github.com/grafana/grafana).
|
||||
|
||||
| Grafana Version | Homepage Widget Version |
|
||||
| --------------- | ----------------------- |
|
||||
| <= v10.4 | 1 (default) |
|
||||
| > v10.4 | 2 |
|
||||
|
||||
Allowed fields: `["dashboards", "datasources", "totalalerts", "alertstriggered"]`.
|
||||
|
||||
```yaml
|
||||
widget:
|
||||
type: grafana
|
||||
version: 2 # optional, default is 1
|
||||
alerts: alertmanager # optional, default is grafana
|
||||
url: http://grafana.host.or.ip:port
|
||||
username: username
|
||||
password: password
|
||||
|
||||
@@ -17,6 +17,7 @@ widget:
|
||||
enableBlocks: true # optional, defaults to false
|
||||
enableNowPlaying: true # optional, defaults to true
|
||||
enableUser: true # optional, defaults to false
|
||||
enableMediaControl: false # optional, defaults to true
|
||||
showEpisodeNumber: true # optional, defaults to false
|
||||
expandOneStreamToTwoRows: false # optional, defaults to true
|
||||
```
|
||||
|
||||
22
docs/widgets/services/komodo.md
Normal file
22
docs/widgets/services/komodo.md
Normal file
@@ -0,0 +1,22 @@
|
||||
---
|
||||
title: Komodo
|
||||
description: Komodo Widget Configuration
|
||||
---
|
||||
|
||||
This widget shows either details about all containers or stacks (if `showStacks` is true) managed by [Komodo](https://komo.do/) or the number of running servers, containers and stacks when `showSummary` is enabled.
|
||||
|
||||
The api key and secret can be found in the Komodo settings.
|
||||
|
||||
Allowed fields (max 4): `["total", "running", "stopped", "unhealthy", "unknown"]`.
|
||||
Allowed fields with `showStacks` (max 4): `["total", "running", "down", "unhealthy", "unknown"]`.
|
||||
Allowed fields with `showSummary`: `["servers", "stacks", "containers"]`.
|
||||
|
||||
```yaml
|
||||
widget:
|
||||
type: komodo
|
||||
url: http://komodo.hostname.or.ip:port
|
||||
key: K-xxxxxx...
|
||||
secret: S-xxxxxx...
|
||||
showSummary: true # optional, default: false
|
||||
showStacks: true # optional, default: false
|
||||
```
|
||||
@@ -7,12 +7,16 @@ Learn more about [Portainer](https://github.com/portainer/portainer).
|
||||
|
||||
You'll need to make sure you have the correct environment set for the integration to work properly. From the Environments section inside of Portainer, click the one you'd like to connect to and observe the ID at the end of the URL (should be), something like `#!/endpoints/1`, here `1` is the value to set as the `env` value. In order to generate an API key, please follow the steps outlined here https://docs.portainer.io/api/access.
|
||||
|
||||
Allowed fields: `["running", "stopped", "total"]`.
|
||||
Allowed fields:
|
||||
|
||||
- For Docker mode (default): `["running", "stopped", "total"]`
|
||||
- For Kubernetes mode (`kubernetes: true`): `["applications", "services", "namespaces"]`
|
||||
|
||||
```yaml
|
||||
widget:
|
||||
type: portainer
|
||||
url: https://portainer.host.or.ip:9443
|
||||
env: 1
|
||||
kubernetes: true # optional, defaults to false
|
||||
key: ptr_accesskeyaccesskeyaccesskeyaccesskey
|
||||
```
|
||||
|
||||
@@ -7,34 +7,7 @@ Learn more about [Proxmox](https://www.proxmox.com/en/).
|
||||
|
||||
This widget shows the running and total counts of both QEMU VMs and LX Containers in the Proxmox cluster. It also shows the CPU and memory usage of the first node in the cluster.
|
||||
|
||||
You will need to generate an API Token for new or an existing user. Here is an example of how to do this for a new user.
|
||||
|
||||
1. Navigate to the Proxmox portal, click on Datacenter
|
||||
2. Expand Permissions, click on Groups
|
||||
3. Click the Create button
|
||||
4. Name the group something informative, like api-ro-users
|
||||
5. Click on the Permissions "folder"
|
||||
6. Click Add -> Group Permission
|
||||
- Path: /
|
||||
- Group: group from bullet 4 above
|
||||
- Role: PVEAuditor
|
||||
- Propagate: Checked
|
||||
7. Expand Permissions, click on Users
|
||||
8. Click the Add button
|
||||
- User name: something informative like `api`
|
||||
- Realm: Linux PAM standard authentication
|
||||
- Group: group from bullet 4 above
|
||||
9. Expand Permissions, click on API Tokens
|
||||
10. Click the Add button
|
||||
- User: user from bullet 8 above
|
||||
- Token ID: something informative like the application or purpose like `homepage`
|
||||
- Privilege Separation: Checked
|
||||
11. Go back to the "Permissions" menu
|
||||
12. Click Add -> API Token Permission
|
||||
- Path: /
|
||||
- API Token: select the Token ID created in Step 10
|
||||
- Role: PVE Auditor
|
||||
- Propagate: Checked
|
||||
See the [Proxmox configuration documentation](../../configs/proxmox.md#create-token) for details on creating API tokens.
|
||||
|
||||
Use `username@pam!Token ID` as the `username` (e.g `api@pam!homepage`) setting and `Secret` as the `password` setting.
|
||||
|
||||
|
||||
17
docs/widgets/services/trilium.md
Normal file
17
docs/widgets/services/trilium.md
Normal file
@@ -0,0 +1,17 @@
|
||||
---
|
||||
title: Trilium
|
||||
description: Trilium Widget Configuration
|
||||
---
|
||||
|
||||
Learn more about [Trilium](https://github.com/TriliumNext/Notes).
|
||||
|
||||
This widget is compatible with [TriliumNext](https://github.com/TriliumNext/Notes) versions >= [v0.94.0](https://github.com/TriliumNext/Notes/releases/tag/v0.94.0).
|
||||
|
||||
Find (or create) your ETAPI key under `Options > ETAPI > Create new ETAPI token`.
|
||||
|
||||
```yaml
|
||||
widget:
|
||||
type: trilium
|
||||
url: https://trilium.host.or.ip
|
||||
key: etapi_token
|
||||
```
|
||||
Reference in New Issue
Block a user