From 168c4558aad8ce674f86af3f5f6f6c1aa2fb082b Mon Sep 17 00:00:00 2001 From: Beda Schmid Date: Thu, 6 Aug 2026 16:20:11 +0000 Subject: [PATCH] Reset history to current sanitized state --- .gitignore | 27 +++++++++++++++++++++++++++ LICENSE | 24 ++++++++++++++++++++++++ README.md | 24 ++++++++++++++++++++++++ docker-compose.yml | 26 ++++++++++++++++++++++++++ 4 files changed, 101 insertions(+) create mode 100644 .gitignore create mode 100644 LICENSE create mode 100644 README.md create mode 100644 docker-compose.yml diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..44af383 --- /dev/null +++ b/.gitignore @@ -0,0 +1,27 @@ +# ---> VisualStudioCode +.vscode/* +!.vscode/settings.json +!.vscode/tasks.json +!.vscode/launch.json +!.vscode/extensions.json +!.vscode/*.code-snippets + +# Local History for Visual Studio Code +.history/ + +# Built Visual Studio Code Extensions +*.vsix + + +# BEGIN reset-history environment exclusions +.env +.env.* +*.env +*.env.* +!.env.example +!.env.*.example +!*.env.example +!*.env.*.example +*.swp +.DS_Store +# END reset-history environment exclusions diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..efb9808 --- /dev/null +++ b/LICENSE @@ -0,0 +1,24 @@ +This is free and unencumbered software released into the public domain. + +Anyone is free to copy, modify, publish, use, compile, sell, or +distribute this software, either in source code form or as a compiled +binary, for any purpose, commercial or non-commercial, and by any +means. + +In jurisdictions that recognize copyright laws, the author or authors +of this software dedicate any and all copyright interest in the +software to the public domain. We make this dedication for the benefit +of the public at large and to the detriment of our heirs and +successors. We intend this dedication to be an overt act of +relinquishment in perpetuity of all present and future rights to this +software under copyright law. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR +OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, +ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +OTHER DEALINGS IN THE SOFTWARE. + +For more information, please refer to diff --git a/README.md b/README.md new file mode 100644 index 0000000..6c455bf --- /dev/null +++ b/README.md @@ -0,0 +1,24 @@ +# Grafana + +Self-hosted visualization and alerting service for dashboards built from configured monitoring data sources. + +## Deployment layout + +- **Compose:** `/srv/docker/grafana/docker-compose.yml` +- **Static configuration/source:** no additional static configuration or build source +- **Non-secret environment:** embedding, cookie, content-security-policy, and anonymous Viewer settings are declared +inline in Compose; there is no project-local `.env` +- **Secrets:** none +- **NVMe application state:** `/srv/appdata/grafana/data` +- **Bulk HDD data:** none +- **Other mounts:** none + +Secrets are never committed to this repository. No standalone secret file is +declared; credentials entered through Grafana are retained in its protected application-managed state. + +## Dependencies and recovery + +- **Networks/dependencies:** external `npm_proxy` network at `192.168.96.13`; monitoring data sources are configured +within Grafana and were not inspected +- **Back up:** `/srv/appdata/grafana/data` +- **Re-creatable:** the Grafana container; no separate cache or temporary-data mount is declared diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..f066346 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,26 @@ +services: + grafana: + mem_limit: 768m + memswap_limit: 1.5g + image: grafana/grafana-enterprise + container_name: grafana + restart: unless-stopped + volumes: + - /srv/appdata/grafana/data:/var/lib/grafana + # ports: +# - '3000:3000' + environment: + - GF_SECURITY_ALLOW_EMBEDDING=true + - GF_SECURITY_COOKIE_SAMESITE=none + - GF_SECURITY_COOKIE_SECURE=true + - GF_SECURITY_CONTENT_SECURITY_POLICY=true + - GF_SECURITY_CONTENT_SECURITY_POLICY_TEMPLATE=frame-ancestors *.lan 'self'; + - GF_AUTH_ANONYMOUS_ENABLED=true # optional but makes embedding painless + - GF_AUTH_ANONYMOUS_ORG_ROLE=Viewer + networks: + npm_proxy: + ipv4_address: 192.168.96.13 + +networks: + npm_proxy: + external: true