Comments (7)
Yes this would greatly facilitate saving the config file in git.
from homepage.
@JazzFisch @shamoon I'm considering a simple substitution of environment variables into the configs as they are loaded, but for security reasons, limiting it to environment variables that start with "HOMEPAGE_". For example:
- Media:
- Jellyfin:
icon: jellyfin.png
href: https://jellyfin.mydomain.tld
description: Static Video Entertainment
app: jellyfin
namespace: media
widget:
type: jellyfin
url: https://jellyfin.int.wynning.tech
key: {{HOMEPAGE_JELLYFIN_APIKEY}}
Then the HOMEPAGE_JELLYFIN_APIKEY
env var could be set either directly as an environment variable, or populated from a Kubernetes secret. I don't love the simple string replacement approach, but the only practical alternatives I saw were to use a full templating library and that feels like gross overkill for the need.
from homepage.
With this approach, no. Perhaps I could expand the solution with an additional prefix for file-based secrets. We could support the "HOMEPAGE_" prefix for direct values and "HOMEPAGEFILE_" prefix for secrets stored in files. So at runtime it would read the file contents from the specified file and substitute it in just as it would for normal variables.
from homepage.
I believe something like this could work, and would tie into the other feature request for configuration via labels. I'll add this to the list of future enhancements.
from homepage.
Just to clarify, currently docker secrets cannot be used in the yaml config files?
I attempted using docker secrets and it appears that the container reads the secret correctly but I cannot get it working with the config files. Hiding passwords and api keys from plain-text would be a much appreciated addition to this project. Thank you!
from homepage.
An alternative could be to extend the variables themselves. For instance, the widgets' "key" field could also have "key-var" and "key-file" which would map to an environment variable and a file respectively. We would need to do the same for credentials in other locations as well. This would be a less flexible approach, but would address the primary concern of storing credentials more securely.
from homepage.
This issue has been automatically locked since there has not been any recent activity after it was closed. Please open a new discussion or issue for related concerns.
from homepage.
Related Issues (20)
- Healthchecks new updated widget HOT 2
- [Bug] siteMonitor option for Proxmox Backup Server widget causes error to be logged on PBS HOT 4
- [Bug] ical Calendar widgets multiplies events HOT 3
- [Bug] Kavita Widget - JSON Error using HOMEPAGE_VAR env keys HOT 1
- Romm widget documentation incorrect HOT 2
- [Bug] adding a .env file to homepage breaks the docker integration on unraid HOT 1
- [Bug] Unifi widget does not set widget.fields if none are configured HOT 10
- [Bug] Container image missing `iputils` -- ping property fails HOT 6
- [Bug] Quick launch not opening with german Umlaut characters HOT 1
- Cloudflare tunnel error HOT 3
- UniFi Dream Router error / no information shown HOT 1
- [Bug]: mjpeg widget places background over icon HOT 4
- [BUG] iCal Integration with all-day events HOT 1
- [BUG] Google search suggestions fail with accented characters HOT 1
- [Bug] Omada widget not showing connected switches HOT 1
- Quick Launch Feature Does Not Support Cyrillic Input HOT 2
- [BUG] `gamedig` widget fails when `fields` specified in docker labels HOT 3
- Cannot navigate to tabs with diacritics HOT 1
- Pihole widget error when `ads_percentage_today` is string type HOT 4
- [Bug] Pihole widget leaks auth token in API error messages HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from homepage.