From fa1ae5b2e73acc31712b2763bd0a00d21f773056 Mon Sep 17 00:00:00 2001 From: Rasmus Lauritsen Date: Wed, 24 Jul 2024 23:47:39 +0200 Subject: [PATCH] first commit --- data/grafana.db | Bin 0 -> 1003520 bytes docker.env | 9 +++ provisioning/datasources/1_graphite.yaml | 75 +++++++++++++++++++++++ provisioning/orgs/new_org.yaml | 17 +++++ readme.md | 9 +++ 5 files changed, 110 insertions(+) create mode 100644 data/grafana.db create mode 100644 docker.env create mode 100644 provisioning/datasources/1_graphite.yaml create mode 100644 provisioning/orgs/new_org.yaml create mode 100644 readme.md diff --git a/data/grafana.db b/data/grafana.db new file mode 100644 index 0000000000000000000000000000000000000000..ac4e8b5c176a0e0a2bca359ac2d644152dfed4f0 GIT binary patch literal 1003520 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 literal 0 HcmV?d00001 diff --git a/docker.env b/docker.env new file mode 100644 index 0000000..dd6a85e --- /dev/null +++ b/docker.env @@ -0,0 +1,9 @@ +# Set the admin user's login and password +GF_SECURITY_ADMIN_USER=admin +GF_SECURITY_ADMIN_PASSWORD=admin + +GF_PATHS_PROVISIONING=/etc/grafana/provisioning + + +# Enable or disable user signup +GF_USERS_ALLOW_SIGN_UP=false diff --git a/provisioning/datasources/1_graphite.yaml b/provisioning/datasources/1_graphite.yaml new file mode 100644 index 0000000..99a68c9 --- /dev/null +++ b/provisioning/datasources/1_graphite.yaml @@ -0,0 +1,75 @@ +# Configuration file version +apiVersion: 1 + +# List of data sources to delete from the database. +deleteDatasources: + - name: Graphite + orgId: 1 + +# Mark provisioned data sources for deletion if they are no longer in a provisioning file. +# It takes no effect if data sources are already listed in the deleteDatasources section. +prune: true + +# List of data sources to insert/update depending on what's +# available in the database. +datasources: + # Sets the name you use to refer to + # the data source in panels and queries. + - name: Graphite + # Sets the data source type. + type: graphite + # Sets the access mode, either + # proxy or direct (Server or Browser in the UI). + # Some data sources are incompatible with any setting + # but proxy (Server). + access: proxy + # Sets the organization id. Defaults to orgId 1. + orgId: 1 + # Sets a custom UID to reference this + # data source in other parts of the configuration. + # If not specified, Grafana generates one. + uid: my_unique_uid + # Sets the data source's URL, including the + # port. + url: http://localhost:8080 + # Sets the database user, if necessary. + user: + # Sets the database name, if necessary. + database: + # Enables basic authorization. + basicAuth: + # Sets the basic authorization username. + basicAuthUser: + # Enables credential headers. + withCredentials: + # Toggles whether the data source is pre-selected + # for new panels. You can set only one default + # data source per organization. + isDefault: + # Fields to convert to JSON and store in jsonData. + jsonData: + # Defines the Graphite service's version. + graphiteVersion: '1.1' + # Enables TLS authentication using a client + # certificate configured in secureJsonData. + tlsAuth: true + # Enables TLS authentication using a CA + # certificate. + tlsAuthWithCACert: true + # Fields to encrypt before storing in jsonData. + secureJsonData: + # Defines the CA cert, client cert, and + # client key for encrypted authentication. + tlsCACert: '...' + tlsClientCert: '...' + tlsClientKey: '...' + # Sets the database password, if necessary. + password: + # Sets the basic authorization password. + basicAuthPassword: + # Sets the version. Used to compare versions when + # updating. Ignored when creating a new data source. + version: 1 + # Allows users to edit data sources from the + # Grafana UI. + editable: false \ No newline at end of file diff --git a/provisioning/orgs/new_org.yaml b/provisioning/orgs/new_org.yaml new file mode 100644 index 0000000..343d1b4 --- /dev/null +++ b/provisioning/orgs/new_org.yaml @@ -0,0 +1,17 @@ +apiVersion: 1 + +orgs: + - name: "New Organization" + address: + address1: "123 Grafana St." + address2: "" + city: "Grafana City" + zipCode: "12345" + state: "Grafana State" + country: "Grafanistan" + preferences: + homeDashboardId: 1 + timezone: "browser" + theme: "" + homeDashboardFolderId: 0 + folderName: "" diff --git a/readme.md b/readme.md new file mode 100644 index 0000000..6ec61cc --- /dev/null +++ b/readme.md @@ -0,0 +1,9 @@ +```bash +docker stop grafana +docker rm grafana +docker run --detach --name=grafana \ + --publish 3000:3000 \ + --env-file=docker.env \ + --volume "$PWD/data:/var/lib/grafana" \ + grafana/grafana-oss +``` \ No newline at end of file