diff --git a/templates/compose/grafana-with-postgresql.yaml b/templates/compose/grafana-with-postgresql.yaml index 5656069fb..0ccdd235d 100644 --- a/templates/compose/grafana-with-postgresql.yaml +++ b/templates/compose/grafana-with-postgresql.yaml @@ -1,52 +1,41 @@ - - -# documentation: https://docs.mindsdb.com/what-is-mindsdb -# slogan: MindsDB is the platform for building AI from enterprise data, enabling smarter organizations. -# tags: mysql, postgresdb, machine-learning, ai -# logo: svgs/mindsdb.png -# port: 47334 +# documentation: https://grafana.com +# slogan: Grafana is the open source analytics & monitoring solution for every database. +# tags: grafana,analytics,monitoring,dashboard +# logo: svgs/grafana.svg +# port: 3000 services: - mindsdb: - image: mindsdb/mindsdb - restart: always - container_name: mindsdb + grafana: + image: grafana/grafana-oss environment: - - SERVICE_FQDN_MINDSDB_47334 - - SERVICE_FQDN_API_47335=/api - - MINDSDB_DOCKER_ENV=true - - MINDSDB_STORAGE_DIR=/mindsdb/var - - FLASK_DEBUG=1 # This will make sure http requests are logged regardless of log level - - OPENAI_API_KEY=$OPENAI_API_KEY - - LANGFUSE_HOST=$LANGFUSE_HOST - - LANGFUSE_PUBLIC_KEY=$LANGFUSE_PUBLIC_KEY - - LANGFUSE_SECRET_KEY=$LANGFUSE_SECRET_KEY - - LANGFUSE_RELEASE="local" - # - LANGFUSE_DEBUG="True" - - LANGFUSE_TIMEOUT="10" - - LANGFUSE_SAMPLE_RATE="1.0" - - MINDSDB_DB_CON=postgresql://postgres:postgres@postgresql - # ports: - # - 47335:47335 - # - 47336:47336 + - SERVICE_FQDN_GRAFANA_3000 + - GF_SERVER_ROOT_URL=${SERVICE_FQDN_GRAFANA} + - GF_SERVER_DOMAIN=${SERVICE_FQDN_GRAFANA} + - GF_SECURITY_ADMIN_PASSWORD=${SERVICE_PASSWORD_GRAFANA} + - GF_DATABASE_TYPE=postgres + - GF_DATABASE_HOST=postgresql + - GF_DATABASE_USER=$SERVICE_USER_POSTGRES + - GF_DATABASE_PASSWORD=$SERVICE_PASSWORD_POSTGRES + - GF_DATABASE_NAME=${POSTGRES_DB:-grafana} volumes: - - mindsdb-data:/mindsdb/var + - grafana-data:/var/lib/grafana healthcheck: - test: ["CMD", "curl", "-f", "http://localhost:47334/api/util/ping"] - interval: 30s - timeout: 4s - retries: 100 + test: ["CMD", "curl", "-f", "http://127.0.0.1:3000/api/health"] + interval: 5s + timeout: 20s + retries: 10 + depends_on: + - postgresql postgresql: image: postgres:16-alpine volumes: - postgresql-data:/var/lib/postgresql/data environment: - - POSTGRES_USER=postgres - - POSTGRES_PASSWORD=postgres - - POSTGRES_DB=mindsdb + - POSTGRES_USER=$SERVICE_USER_POSTGRES + - POSTGRES_PASSWORD=$SERVICE_PASSWORD_POSTGRES + - POSTGRES_DB=${POSTGRES_DB:-grafana} healthcheck: test: ["CMD-SHELL", "pg_isready -U $${POSTGRES_USER} -d $${POSTGRES_DB}"] interval: 5s timeout: 20s retries: 10 - diff --git a/templates/service-templates.json b/templates/service-templates.json index 56466eb58..be67f694a 100644 --- a/templates/service-templates.json +++ b/templates/service-templates.json @@ -999,18 +999,18 @@ "port": "8080" }, "grafana-with-postgresql": { - "documentation": "https://docs.mindsdb.com/what-is-mindsdb?utm_source=coolify.io", - "slogan": "MindsDB is the platform for building AI from enterprise data, enabling smarter organizations.", - "compose": "c2VydmljZXM6CiAgbWluZHNkYjoKICAgIGltYWdlOiBtaW5kc2RiL21pbmRzZGIKICAgIHJlc3RhcnQ6IGFsd2F5cwogICAgY29udGFpbmVyX25hbWU6IG1pbmRzZGIKICAgIGVudmlyb25tZW50OgogICAgICAtIFNFUlZJQ0VfRlFETl9NSU5EU0RCXzQ3MzM0CiAgICAgIC0gU0VSVklDRV9GUUROX0FQSV80NzMzNT0vYXBpCiAgICAgIC0gTUlORFNEQl9ET0NLRVJfRU5WPXRydWUKICAgICAgLSBNSU5EU0RCX1NUT1JBR0VfRElSPS9taW5kc2RiL3ZhcgogICAgICAtIEZMQVNLX0RFQlVHPTEKICAgICAgLSBPUEVOQUlfQVBJX0tFWT0kT1BFTkFJX0FQSV9LRVkKICAgICAgLSBMQU5HRlVTRV9IT1NUPSRMQU5HRlVTRV9IT1NUCiAgICAgIC0gTEFOR0ZVU0VfUFVCTElDX0tFWT0kTEFOR0ZVU0VfUFVCTElDX0tFWQogICAgICAtIExBTkdGVVNFX1NFQ1JFVF9LRVk9JExBTkdGVVNFX1NFQ1JFVF9LRVkKICAgICAgLSAnTEFOR0ZVU0VfUkVMRUFTRT0ibG9jYWwiJwogICAgICAtICdMQU5HRlVTRV9USU1FT1VUPSIxMCInCiAgICAgIC0gJ0xBTkdGVVNFX1NBTVBMRV9SQVRFPSIxLjAiJwogICAgICAtICdNSU5EU0RCX0RCX0NPTj1wb3N0Z3Jlc3FsOi8vcG9zdGdyZXM6cG9zdGdyZXNAcG9zdGdyZXNxbCcKICAgIHZvbHVtZXM6CiAgICAgIC0gJ21pbmRzZGItZGF0YTovbWluZHNkYi92YXInCiAgICBoZWFsdGhjaGVjazoKICAgICAgdGVzdDoKICAgICAgICAtIENNRAogICAgICAgIC0gY3VybAogICAgICAgIC0gJy1mJwogICAgICAgIC0gJ2h0dHA6Ly9sb2NhbGhvc3Q6NDczMzQvYXBpL3V0aWwvcGluZycKICAgICAgaW50ZXJ2YWw6IDMwcwogICAgICB0aW1lb3V0OiA0cwogICAgICByZXRyaWVzOiAxMDAKICBwb3N0Z3Jlc3FsOgogICAgaW1hZ2U6ICdwb3N0Z3JlczoxNi1hbHBpbmUnCiAgICB2b2x1bWVzOgogICAgICAtICdwb3N0Z3Jlc3FsLWRhdGE6L3Zhci9saWIvcG9zdGdyZXNxbC9kYXRhJwogICAgZW52aXJvbm1lbnQ6CiAgICAgIC0gUE9TVEdSRVNfVVNFUj1wb3N0Z3JlcwogICAgICAtIFBPU1RHUkVTX1BBU1NXT1JEPXBvc3RncmVzCiAgICAgIC0gUE9TVEdSRVNfREI9bWluZHNkYgogICAgaGVhbHRoY2hlY2s6CiAgICAgIHRlc3Q6CiAgICAgICAgLSBDTUQtU0hFTEwKICAgICAgICAtICdwZ19pc3JlYWR5IC1VICQke1BPU1RHUkVTX1VTRVJ9IC1kICQke1BPU1RHUkVTX0RCfScKICAgICAgaW50ZXJ2YWw6IDVzCiAgICAgIHRpbWVvdXQ6IDIwcwogICAgICByZXRyaWVzOiAxMAo=", + "documentation": "https://grafana.com?utm_source=coolify.io", + "slogan": "Grafana is the open source analytics & monitoring solution for every database.", + "compose": "c2VydmljZXM6CiAgZ3JhZmFuYToKICAgIGltYWdlOiBncmFmYW5hL2dyYWZhbmEtb3NzCiAgICBlbnZpcm9ubWVudDoKICAgICAgLSBTRVJWSUNFX0ZRRE5fR1JBRkFOQV8zMDAwCiAgICAgIC0gJ0dGX1NFUlZFUl9ST09UX1VSTD0ke1NFUlZJQ0VfRlFETl9HUkFGQU5BfScKICAgICAgLSAnR0ZfU0VSVkVSX0RPTUFJTj0ke1NFUlZJQ0VfRlFETl9HUkFGQU5BfScKICAgICAgLSAnR0ZfU0VDVVJJVFlfQURNSU5fUEFTU1dPUkQ9JHtTRVJWSUNFX1BBU1NXT1JEX0dSQUZBTkF9JwogICAgICAtIEdGX0RBVEFCQVNFX1RZUEU9cG9zdGdyZXMKICAgICAgLSBHRl9EQVRBQkFTRV9IT1NUPXBvc3RncmVzcWwKICAgICAgLSBHRl9EQVRBQkFTRV9VU0VSPSRTRVJWSUNFX1VTRVJfUE9TVEdSRVMKICAgICAgLSBHRl9EQVRBQkFTRV9QQVNTV09SRD0kU0VSVklDRV9QQVNTV09SRF9QT1NUR1JFUwogICAgICAtICdHRl9EQVRBQkFTRV9OQU1FPSR7UE9TVEdSRVNfREI6LWdyYWZhbmF9JwogICAgdm9sdW1lczoKICAgICAgLSAnZ3JhZmFuYS1kYXRhOi92YXIvbGliL2dyYWZhbmEnCiAgICBoZWFsdGhjaGVjazoKICAgICAgdGVzdDoKICAgICAgICAtIENNRAogICAgICAgIC0gY3VybAogICAgICAgIC0gJy1mJwogICAgICAgIC0gJ2h0dHA6Ly8xMjcuMC4wLjE6MzAwMC9hcGkvaGVhbHRoJwogICAgICBpbnRlcnZhbDogNXMKICAgICAgdGltZW91dDogMjBzCiAgICAgIHJldHJpZXM6IDEwCiAgICBkZXBlbmRzX29uOgogICAgICAtIHBvc3RncmVzcWwKICBwb3N0Z3Jlc3FsOgogICAgaW1hZ2U6ICdwb3N0Z3JlczoxNi1hbHBpbmUnCiAgICB2b2x1bWVzOgogICAgICAtICdwb3N0Z3Jlc3FsLWRhdGE6L3Zhci9saWIvcG9zdGdyZXNxbC9kYXRhJwogICAgZW52aXJvbm1lbnQ6CiAgICAgIC0gUE9TVEdSRVNfVVNFUj0kU0VSVklDRV9VU0VSX1BPU1RHUkVTCiAgICAgIC0gUE9TVEdSRVNfUEFTU1dPUkQ9JFNFUlZJQ0VfUEFTU1dPUkRfUE9TVEdSRVMKICAgICAgLSAnUE9TVEdSRVNfREI9JHtQT1NUR1JFU19EQjotZ3JhZmFuYX0nCiAgICBoZWFsdGhjaGVjazoKICAgICAgdGVzdDoKICAgICAgICAtIENNRC1TSEVMTAogICAgICAgIC0gJ3BnX2lzcmVhZHkgLVUgJCR7UE9TVEdSRVNfVVNFUn0gLWQgJCR7UE9TVEdSRVNfREJ9JwogICAgICBpbnRlcnZhbDogNXMKICAgICAgdGltZW91dDogMjBzCiAgICAgIHJldHJpZXM6IDEwCg==", "tags": [ - "mysql", - "postgresdb", - "machine-learning", - "ai" + "grafana", + "analytics", + "monitoring", + "dashboard" ], - "logo": "svgs/mindsdb.png", + "logo": "svgs/grafana.svg", "minversion": "0.0.0", - "port": "47334" + "port": "3000" }, "grafana": { "documentation": "https://grafana.com?utm_source=coolify.io",