To build a Docker image for all components of Hygieia, execute the following steps:

  • Step 1: Build the Project

    To package the Hygieia source code into an executable JAR file, run the Maven build from the \Hygieia directory of your source code installation:

    mvn clean install
    
  • Step 2: Configure your Environment

    To configure your environment, find docker-compose.override.example.yml in the root of the project and rename it to docker-compose.override.yml. The most commonly used properties are listed and the uncommented properties are mandatory for the collector to work:

    hygieia-github-scm-collector:
      environment:
      - GITHUB_HOST=github.com
      - GITHUB_CRON=0 * * * * *
      - GITHUB_COMMIT_THRESHOLD_DAYS=300
    hygieia-jira-feature-collector:
      environment:
      - JIRA_BASE_URL=https://mycompany.atlassian.net/
      - JIRA_CREDENTIALS=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
      - JIRA_ISSUE_TYPE_ID=10200
      - JIRA_SPRINT_DATA_FIELD_NAME=customfield_10007
      - JIRA_EPIC_FIELD_NAME=customfield_10008
    hygieia-jenkins-build-collector:
      environment:
      - JENKINS_CRON=0 * * * * *
      - JENKINS_MASTER=http://192.168.99.100:9100
      - JENKINS_USERNAME=XXXXXXXXXXXXXXXXXXXXXX
      - JENKINS_API_KEY=XXXXXXXXXXXXXXXXXXXXXXXXXX
    hygieia-jenkins-cucumber-test-collector:
      environment:
      - JENKINS_CRON=0 * * * * *
      - JENKINS_MASTER=http://192.168.99.100:9100
      - JENKINS_USERNAME=XXXXXXXXXXXXXXXXXXXXXX
      - JENKINS_API_KEY=XXXXXXXXXXXXXXXXX
      - JENKINS_CUCUMBER_JSON_FILENAME=cucumber-report.json
    hygieia-sonar-codequality-collector:
      environment:
      - SONAR_URL=http://192.168.99.100:9000
      - SONAR_CRON=0 * * * * *
    

    Note: For dev/testing the project, change the CRON entries to "0 * * * * *".

    For generic Docker configuration properties, refer to the docker-compose.yml file.

  • Step 3: Start the Container Images

    Start containers in the background and keep them running:

    docker-compose up -d
    
  • Step 4: Create the admin user

    The UI should now be accessible at http://localhost:3000. Click “Sign up” and create a user named “admin”. You should now be ready to start creating dashboards!

Note: You can build Docker images individually for the API and UI layers. For instructions, refer to the the API and UI documentation.