Compare commits
21 Commits
6b0f153ac9
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
| 9c200377cb | |||
| 7986911764 | |||
| b8e6e55394 | |||
| 8621dcd556 | |||
| c06414dc81 | |||
| c2c6ac7021 | |||
| 641b89899d | |||
| 5393e7d4ac | |||
| 1b37234cd8 | |||
| 537b50c9eb | |||
| c29c5e1be3 | |||
| d430cbe37d | |||
| 31f0ca2a9d | |||
| 3b756f0de8 | |||
| 48e962082b | |||
| 17f121fe12 | |||
| d830b0771b | |||
| a1c5cc3175 | |||
| 69b9d97923 | |||
| 59a0a8439f | |||
| 88cbdf4393 |
27
.env.example
27
.env.example
@@ -1,27 +0,0 @@
|
||||
HOMEPAGE_VAR_PROXMOX_URL=https://proxmox.example.com:8006
|
||||
HOMEPAGE_VAR_PROXMOX_PAM=root@pam
|
||||
HOMEPAGE_VAR_PROXMOX_SECRET='your_proxmox_api_token'
|
||||
HOMEPAGE_VAR_PORTAINER_URL=https://portainer.example.com
|
||||
HOMEPAGE_VAR_PORTAINER_KEY='your_portainer_api_token'
|
||||
HOMEPAGE_VAR_TRUENAS_URL=http://truenas.example.com
|
||||
HOMEPAGE_VAR_TRUENAS_KEY='your_truenas_api_token'
|
||||
HOMEPAGE_VAR_TRANSMISSION_URL=http://transmission.example.com:9091
|
||||
HOMEPAGE_VAR_IMMICH_URL=http://immich.example.com
|
||||
HOMEPAGE_VAR_IMMICH_KEY='your_immich_api_token'
|
||||
HOMEPAGE_VAR_SEAFILE_URL=https://seafile.example.com/
|
||||
HOMEPAGE_VAR_NPM_URL=http://npm.example.com:81
|
||||
HOMEPAGE_VAR_NPM_USER=user@example.com
|
||||
HOMEPAGE_VAR_NPM_PASS='your_npm_password'
|
||||
HOMEPAGE_VAR_ADGUARD_URL=http://adguard.example.com
|
||||
HOMEPAGE_VAR_ADGUARD_USER='your_adguard_username'
|
||||
HOMEPAGE_VAR_ADGUARD_PASS='your_adguard_password'
|
||||
HOMEPAGE_VAR_GUACAMOLE_URL=http://guacamole.example.com
|
||||
HOMEPAGE_VAR_WEBTOP_URL=http://webtop.example.com
|
||||
HOMEPAGE_VAR_LENOVO_AMT_URL=http://amt.example.com:16992
|
||||
HOMEPAGE_VAR_ZABBIX_URL=https://zabbix.example.com
|
||||
HOMEPAGE_VAR_ZABBIX_KEY='your_zabbix_api_token'
|
||||
HOMEPAGE_VAR_GRAFANA_URL=https://grafana.example.com
|
||||
HOMEPAGE_VAR_IT_TOOLS_URL=http://it-tools.example.com
|
||||
HOMEPAGE_VAR_VAULTWARDEN_URL=https://vaultwarden.example.com
|
||||
HOMEPAGE_VAR_GITEA_URL=http://gitea.example.com:3000
|
||||
HOMEPAGE_VAR_GITEA_KEY='your_gitea_api_token'
|
||||
3
.gitignore
vendored
3
.gitignore
vendored
@@ -1,3 +0,0 @@
|
||||
/logs
|
||||
.env
|
||||
*.bak
|
||||
26
README.md
Normal file
26
README.md
Normal file
@@ -0,0 +1,26 @@
|
||||
# Homepage Configuration
|
||||
|
||||
This repository contains the configuration files for a [Homepage](https://gethomepage.dev/) instance, a modern, fully static, fast, secure, and highly customizable application dashboard.
|
||||
|
||||
## Configuration Overview
|
||||
|
||||
The configuration is split across several YAML files, each responsible for a different aspect of the dashboard.
|
||||
|
||||
* **`services.yaml`**: Defines the main services and applications displayed on the dashboard. Each service can have a name, description, icon, link, and an associated widget.
|
||||
* **`widgets.yaml`**: Configures standalone informational widgets, such as the weather forecast (`openmeteo`) and a digital clock (`datetime`).
|
||||
* **`bookmarks.yaml`**: Manages the bookmarks section, organized into groups for easy access to frequently used sites.
|
||||
* **`docker.yaml`**: Sets up the connection to Docker hosts, allowing Homepage to display container statuses and provide quick actions.
|
||||
* **`settings.yaml`**: Contains global settings for the dashboard, such as the visual theme (`dark`).
|
||||
* **`.env`**: Stores all secrets, API keys, and environment-specific URLs. This file is intentionally excluded from version control by `.gitignore` to keep sensitive information secure.
|
||||
* **`.env.example`**: A template file that shows which environment variables are required for the configuration to work correctly.
|
||||
|
||||
### Using Environment Variables
|
||||
|
||||
This configuration makes extensive use of variables to separate secrets and environment-specific values from the main configuration. In files like [`services.yaml`](homepage/services.yaml), you will see placeholders like `{{HOMEPAGE_VAR_PROXMOX_URL}}`.
|
||||
|
||||
Homepage automatically replaces these placeholders with the corresponding values defined in the [`.env`](homepage/.env) file. This approach allows for a clean, portable, and secure configuration, as sensitive data is not hardcoded and can be easily managed without altering the core YAML files.
|
||||
|
||||
To use this configuration, you would need to:
|
||||
1. Copy [`.env.example`](homepage/.env.example) to `.env`.
|
||||
2. Fill in the `.env` file with your specific URLs, API keys, and credentials.
|
||||
3. Ensure your Homepage instance is configured to use this directory for its configuration.
|
||||
@@ -60,19 +60,19 @@
|
||||
href: https://gemini.google.com/app?hl=en
|
||||
description: Gemini chat
|
||||
|
||||
# - Zabbix:
|
||||
# - Prod:
|
||||
# - icon: zabbix
|
||||
# href: https://zabbix.xopek.co.uk/
|
||||
- Useful:
|
||||
# - Vaultwarden:
|
||||
# - icon: vaultwarden
|
||||
# href: https://pass.mbuz.uk/
|
||||
|
||||
# - Test 7.0:
|
||||
# - icon: zabbix
|
||||
# href: http://10.0.0.107/zabbix/
|
||||
# - IT-Tools:
|
||||
# - icon: it-tools
|
||||
# href: http://10.0.0.101:8182/
|
||||
|
||||
# - Test 6.0:
|
||||
# - icon: zabbix
|
||||
# href: http://10.0.0.106/zabbix/
|
||||
- Oh Shit Git:
|
||||
- icon: git
|
||||
href: https://ohshitgit.com/
|
||||
|
||||
# - Test 5.0:
|
||||
# - icon: zabbix
|
||||
# href: http://10.0.0.105/zabbix/
|
||||
- Git Cheatsheet:
|
||||
- icon: gitlab
|
||||
href: https://about.gitlab.com/images/press/git-cheat-sheet.pdf
|
||||
|
||||
132
services.yaml
132
services.yaml
@@ -12,6 +12,7 @@
|
||||
url: "{{HOMEPAGE_VAR_PROXMOX_URL}}"
|
||||
username: "{{HOMEPAGE_VAR_PROXMOX_PAM}}"
|
||||
password: "{{HOMEPAGE_VAR_PROXMOX_SECRET}}"
|
||||
|
||||
- Docker:
|
||||
- Apps:
|
||||
href: "{{HOMEPAGE_VAR_PORTAINER_URL}}"
|
||||
@@ -23,6 +24,18 @@
|
||||
env: 18
|
||||
key: "{{HOMEPAGE_VAR_PORTAINER_KEY}}"
|
||||
|
||||
- Apps:
|
||||
href: "{{HOMEPAGE_VAR_KOMODO_URL}}"
|
||||
description: Komodo
|
||||
icon: komodo
|
||||
widget:
|
||||
type: komodo
|
||||
url: "{{HOMEPAGE_VAR_KOMODO_URL}}"
|
||||
key: "{{HOMEPAGE_VAR_KOMODO_KEY}}"
|
||||
secret: "{{HOMEPAGE_VAR_KOMODO_SECRET}}"
|
||||
showSummary: true # optional, default: false
|
||||
# showStacks: true # default: false
|
||||
|
||||
- Cloud:
|
||||
href: "{{HOMEPAGE_VAR_PORTAINER_URL}}"
|
||||
description: Portainer
|
||||
@@ -33,6 +46,8 @@
|
||||
env: 16
|
||||
key: "{{HOMEPAGE_VAR_PORTAINER_KEY}}"
|
||||
|
||||
|
||||
|
||||
- Files:
|
||||
- TrueNAS:
|
||||
href: "{{HOMEPAGE_VAR_TRUENAS_URL}}"
|
||||
@@ -71,6 +86,46 @@
|
||||
server: cloud
|
||||
container: seafile_server
|
||||
|
||||
- Tools & Utilities:
|
||||
- Zabbix Oracle:
|
||||
href: "{{HOMEPAGE_VAR_ZABBIX_URL}}/"
|
||||
icon: zabbix
|
||||
siteMonitor: "{{HOMEPAGE_VAR_ZABBIX_URL}}"
|
||||
widget:
|
||||
type: zabbix
|
||||
url: "{{HOMEPAGE_VAR_ZABBIX_URL}}"
|
||||
key: "{{HOMEPAGE_VAR_ZABBIX_KEY}}"
|
||||
|
||||
- Gitea:
|
||||
href: "{{HOMEPAGE_VAR_GITEA_URL}}/"
|
||||
description: Local Git server
|
||||
icon: gitea
|
||||
siteMonitor: "{{HOMEPAGE_VAR_GITEA_URL}}/"
|
||||
# widget:
|
||||
# type: gitea
|
||||
# url: "{{HOMEPAGE_VAR_GITEA_URL}}"
|
||||
# key: "{{HOMEPAGE_VAR_GITEA_KEY}}"
|
||||
|
||||
- Grafana:
|
||||
href: "{{HOMEPAGE_VAR_GRAFANA_URL}}/login"
|
||||
description: Proxmox monitoring dashboard
|
||||
icon: grafana
|
||||
siteMonitor: "{{HOMEPAGE_VAR_GRAFANA_URL}}"
|
||||
|
||||
- IT Tools:
|
||||
href: "{{HOMEPAGE_VAR_IT_TOOLS_URL}}"
|
||||
description: Handy things for work
|
||||
icon: it-tools
|
||||
server: apps
|
||||
container: it-tools
|
||||
|
||||
- Vaultwarden:
|
||||
href: "{{HOMEPAGE_VAR_VAULTWARDEN_URL}}"
|
||||
description: Password manager
|
||||
icon: vaultwarden
|
||||
server: apps
|
||||
container: vaultwarden
|
||||
|
||||
- Networking:
|
||||
- Nginx Proxy Manager:
|
||||
href: "{{HOMEPAGE_VAR_NPM_URL}}/nginx/proxy"
|
||||
@@ -93,62 +148,27 @@
|
||||
username: "{{HOMEPAGE_VAR_ADGUARD_USER}}"
|
||||
password: "{{HOMEPAGE_VAR_ADGUARD_PASS}}"
|
||||
|
||||
- Remote:
|
||||
- Guacamole:
|
||||
href: "{{HOMEPAGE_VAR_GUACAMOLE_URL}}"
|
||||
icon: guacamole
|
||||
server: apps
|
||||
container: guacamole
|
||||
- Landing:
|
||||
href: "{{HOMEPAGE_VAR_MYSITE_URL}}"
|
||||
description: CV website
|
||||
icon: si-biolink
|
||||
siteMonitor: "{{HOMEPAGE_VAR_MYSITE_URL}}"
|
||||
|
||||
- Webtop:
|
||||
href: "{{HOMEPAGE_VAR_WEBTOP_URL}}"
|
||||
icon: webtop
|
||||
server: apps
|
||||
container: webtop
|
||||
# - Remote:
|
||||
# - Guacamole:
|
||||
# href: "{{HOMEPAGE_VAR_GUACAMOLE_URL}}"
|
||||
# icon: guacamole
|
||||
# server: apps
|
||||
# container: guacamole
|
||||
|
||||
- Lenovo AMT:
|
||||
description: Intel AMT remote management for Lenovo
|
||||
href: "{{HOMEPAGE_VAR_LENOVO_AMT_URL}}"
|
||||
icon: si-intel-#0071C5
|
||||
|
||||
- Tools & Utilities:
|
||||
|
||||
- Zabbix Oracle:
|
||||
href: "{{HOMEPAGE_VAR_ZABBIX_URL}}/"
|
||||
icon: zabbix
|
||||
siteMonitor: "{{HOMEPAGE_VAR_ZABBIX_URL}}"
|
||||
widget:
|
||||
type: zabbix
|
||||
url: "{{HOMEPAGE_VAR_ZABBIX_URL}}"
|
||||
key: "{{HOMEPAGE_VAR_ZABBIX_KEY}}"
|
||||
|
||||
- Grafana:
|
||||
href: "{{HOMEPAGE_VAR_GRAFANA_URL}}/login"
|
||||
description: Grafana
|
||||
icon: grafana
|
||||
siteMonitor: "{{HOMEPAGE_VAR_GRAFANA_URL}}"
|
||||
|
||||
- IT Tools:
|
||||
href: "{{HOMEPAGE_VAR_IT_TOOLS_URL}}"
|
||||
description: Handy things for work
|
||||
icon: it-tools
|
||||
server: apps
|
||||
container: it-tools
|
||||
|
||||
- Vaultwarden:
|
||||
href: "{{HOMEPAGE_VAR_VAULTWARDEN_URL}}"
|
||||
description: Password manager
|
||||
icon: vaultwarden
|
||||
server: apps
|
||||
container: vaultwarden
|
||||
|
||||
- Gitea:
|
||||
href: "{{HOMEPAGE_VAR_GITEA_URL}}/"
|
||||
description: Local Git server
|
||||
icon: gitea
|
||||
siteMonitor: "{{HOMEPAGE_VAR_GITEA_URL}}/"
|
||||
widget:
|
||||
type: gitea
|
||||
url: "{{HOMEPAGE_VAR_GITEA_URL}}"
|
||||
key: "{{HOMEPAGE_VAR_GITEA_KEY}}"
|
||||
# - Webtop:
|
||||
# href: "{{HOMEPAGE_VAR_WEBTOP_URL}}"
|
||||
# icon: webtop
|
||||
# server: apps
|
||||
# container: webtop
|
||||
|
||||
# - Lenovo AMT:
|
||||
# description: Intel AMT remote management for Lenovo
|
||||
# href: "{{HOMEPAGE_VAR_LENOVO_AMT_URL}}"
|
||||
# icon: si-intel-#0071C5
|
||||
# siteMonitor: "{{HOMEPAGE_VAR_LENOVO_AMT_URL}}"
|
||||
@@ -23,8 +23,8 @@
|
||||
# username: user # optional if auth enabled in Glances
|
||||
# password: pass # optional if auth enabled in Glances
|
||||
# version: 4 # required only if running glances v4 or higher, defaults to 3
|
||||
cpu: false
|
||||
mem: false
|
||||
cpu: true
|
||||
mem: true
|
||||
cputemp: true
|
||||
uptime: true
|
||||
expanded: false
|
||||
|
||||
Reference in New Issue
Block a user