使用 docker-compose 运行时,Sonarqube 和 postgresql 不遵守声纳仪表板上的用户名和密码

问题描述 投票:0回答:2

我想通过 docker-compose 使用 postgresql 设置 sonarqube,尽管我在 docker-compose.yml 中提供了环境变量,但 Sonarqube 并没有尊重它们。我无法使用 docker-compose.yml 中提供的用户名和密码登录 Sonarqube 仪表板。

我的 docker-compose.yml 如下所示:-

  sonarkube:
    container_name: sonarkube
    image: sonarqube:latest
    restart: on-failure:5
    command: >
      /bin/bash -c "
        while ! nc -z sonar_postgres 5432;
        do
          echo sleeping;
          sleep 1;
        done;
        echo Connected!;
      "
    command: -Dsonar.ce.javaOpts=-Xms512m
    command: -Dsonar.ce.javaOpts=-Xmx2048m
    command: -Dsonar.sonar.search.javaOpts=-Xms512m
    command: -Dsonar.sonar.search.javaOpts=-Xmx2048m
    command: -Dsonar.login=biplab
    command: -Dsonar.password=biplab
    ports:
      - "9000:9000"
      - "9092:9092"
    depends_on:
      - sonar_postgres
    environment:
      - Dsonar.jdbc.url=jdbc:postgresql://sonar_postgres:5432/sonar?user=biplab&password=biplab
      - Dsonar.jdbc.username=biplab
      - Dsonar.jdbc.password=biplab
      - SONARQUBE_JDBC_USERNAME=biplab
      - SONARQUBE_JDBC_PASSWORD=biplab
      - SONARQUBE_JDBC_URL=jdbc:postgresql://sonar_postgres:5432/sonar?user=biplab&password=biplab
      - SONAR_LOGIN=biplab
      - SONAR_PASSWORD=biplab
    volumes:
      - /opt/sonarqube/extensions
      - ./data/sonarqube/docker:/opt/sonarqube/docker
    networks:
      - frontend

  sonar_postgres:
    image: postgres:9.6-alpine
    restart: on-failure:5
    hostname: sonar_postgres
    container_name: sonar_postgres
    networks:
      - frontend
    ports:
      - "5432:5432"
    environment:
      - POSTGRES_USER=biplab
      - POSTGRES_PASSWORD=biplab
      - POSTGRESQL_DATABASE=sonar
    volumes:
      - postgresql:/var/lib/postgresql:z
      - /opt/postgres/data:/var/lib/postgresql/data:z

volumes:
  postgresql:
  postgresql_data:

networks:
  frontend:
postgresql docker docker-compose sonarqube
2个回答
0
投票

您的 docker-compose.yaml 无效: 1. 多个

command
定义 2.环境变量POSTGRESQL_DATABASE错误,应该是POSTGRES_DB

这个 docker-compose.yaml 文件运行良好并且能够登录:

version: '3.5'

services:
  sonarqube:
    image: sonarqube
    ports:
      - "9000:9000"
    networks:
      - sonarnet
    environment:
      - sonar.jdbc.url=jdbc:postgresql://db:5432/sonar
    volumes:
      - sonarqube_conf:/opt/sonarqube/conf
      - sonarqube_data:/opt/sonarqube/data
      - sonarqube_extensions:/opt/sonarqube/extensions

  db:
    image: postgres
    networks:
      - sonarnet
    environment:
      - POSTGRES_USER=sonar
      - POSTGRES_PASSWORD=sonar
      - POSTGRES_DB=sonar
    volumes:
      - postgresql:/var/lib/postgresql
      - postgresql_data:/var/lib/postgresql/data

networks:
  sonarnet:
    driver: bridge

volumes:
  sonarqube_conf:
  sonarqube_data:
  sonarqube_extensions:
  postgresql:
  postgresql_data:

0
投票

默认登录名是:

admin
admin

© www.soinside.com 2019 - 2024. All rights reserved.