apache / incubator-devlake

Apache DevLake is an open-source dev data platform to ingest, analyze, and visualize the fragmented data from DevOps tools, extracting insights for engineering excellence, developer experience, and community growth.
https://devlake.apache.org/
Apache License 2.0
2.59k stars 522 forks source link

Unable to access config-ui after resetting the admin password in Grafana #7908

Open adityai opened 2 months ago

adityai commented 2 months ago

Search before asking

What happened

I installed using the docker-compose.yaml file hosted in github. I forgot my admin password to login to grafana. I logged into the grafana docker container and used the grafana-cli to reset the admin password. When I tried to access http://localhost:4000, I get a sign-in dialog. I tried entering the admin credentials, but the dialog doesn't go away. I was expecting to see the config-ui. I am able to login as admin to grafana from http://localhost:4000/grafana url, but I am no longer able to access to config-ui.

What do you expect to happen

I expected to see the config-ui from which I could access or create the connections. Instead I see a signin dialog.

How to reproduce

SSH to the grafana docker container: docker exec -it devlake-grafana-1 /bin/bash

Execute the following command: grafana-cli admin reset-admin-password admin

After that navigate to http://localhost:4000 and I see a signin dialog instead of the config-ui. Try entering the admin credentials and the dialog comes back. Try accessing http://localhost:4000/projects or http://localhost:4000/blueprints and the same dialog comes back.

Anything else

No response

Version

v1.0.0

Are you willing to submit PR?

Code of Conduct

dosubot[bot] commented 2 months ago

Hey there, @adityai! I'm here to assist you with any bugs, questions, or contributions you have while waiting for a human maintainer. Let's squash those bugs together! 🤖

To access the config-ui after resetting the admin password in Grafana, you should navigate to http://localhost:3002 instead of http://localhost:4000. The Grafana service is mapped to port 3002 in your docker-compose.yml file.

Here is the relevant section from your docker-compose.yml:

  grafana:
    image: apache/devlake-dashboard:v0.15.0
    ports:
      - 3002:3000
    volumes:
      - grafana-storage:/var/lib/grafana
    environment:
      GF_SERVER_ROOT_URL: "http://localhost:4000/grafana"
      GF_USERS_DEFAULT_THEME: "light"
      MYSQL_URL: mysql:3306
      MYSQL_DATABASE: lake
      MYSQL_USER: merico
      MYSQL_PASSWORD: merico
    restart: always
    depends_on:
      - mysql

The config-ui service is mapped to port 4000, but it is not the Grafana service. Therefore, to access Grafana, use http://localhost:3002 [1][2].

To continue talking to Dosu, mention @dosu.

ZhangNing10 commented 2 months ago

hi @adityai , could you paste the screenshot of the dialog when you open http://localhost:4000/projects? and could you also paste the content of docker compose yml file?

adityai commented 2 months ago

image

The docker-compose.yaml file:

version: "3"
services:
  mysql:
    image: mysql:8
    volumes:
      - mysql-storage:/var/lib/mysql
    restart: always
    ports:
      - 3306:3306
    environment:
      MYSQL_ROOT_PASSWORD: admin
      MYSQL_DATABASE: lake
      MYSQL_USER: merico
      MYSQL_PASSWORD: merico
      TZ: UTC
    command: --character-set-server=utf8mb4
      --collation-server=utf8mb4_bin
      --skip-log-bin

  grafana:
    image: devlake.docker.scarf.sh/apache/devlake-dashboard:v1.0.0   
    ports:
      - 3002:3000
    volumes:
      - grafana-storage:/var/lib/grafana
    environment:
      GF_SERVER_ROOT_URL: "http://localhost:4000/grafana"
      GF_USERS_DEFAULT_THEME: "light"
      MYSQL_URL: mysql:3306
      MYSQL_DATABASE: lake
      MYSQL_USER: merico
      MYSQL_PASSWORD: merico
      TZ: UTC
    restart: always
    depends_on:
      - mysql

  devlake:
    image: devlake.docker.scarf.sh/apache/devlake:v1.0.0   
    ports:
      - 8080:8080
    restart: always
    volumes:
      - devlake-log:/app/logs
    env_file:
      - ./.env
    environment:
      LOGGING_DIR: /app/logs
      TZ: UTC
    depends_on:
      - mysql

  config-ui:
    image: devlake.docker.scarf.sh/apache/devlake-config-ui:v1.0.0   
    ports:
      - 4000:4000
    env_file:
      - ./.env
    environment:
      DEVLAKE_ENDPOINT: devlake:8080
      GRAFANA_ENDPOINT: grafana:3000
      TZ: UTC
      ADMIN_USER: devlake
      ADMIN_PASS: merico
    depends_on:
      - devlake

volumes:
  mysql-storage:
  grafana-storage:
  devlake-log:
klesh commented 2 months ago

The username and password are configured here: image