github.com/quay/claircore@v1.5.28/docs/introduction.md (about)

     1  # Claircore
     2  
     3  Claircore is the engine behind the Clair v4 container security solution.
     4  The Claircore package exports our domain models, interfaces necessary to plug into our business logic, and a default set of implementations.
     5  This default set of implementations define our support matrix and consists of the following distributions and languages:
     6  
     7  - Ubuntu
     8  - Debian
     9  - RHEL
    10  - Red Hat Container First content
    11  - SUSE
    12  - Oracle
    13  - Alpine
    14  - AWS Linux
    15  - VMWare Photon
    16  - Python
    17  - Java
    18  - Go
    19  - Ruby
    20  
    21  Claircore relies on PostgreSQL for its persistence and the library will handle migrations if configured to do so.
    22  
    23  The diagram below is a high level overview of Claircore's architecture. 
    24  
    25  ```mermaid
    26  graph LR
    27  subgraph Indexer
    28  im[Image Manifest]
    29  libindex[Libindex]
    30  iir[IndexReport]
    31  im --> libindex --> iir
    32  end
    33  iir -.-> db[(Database)]
    34  ```
    35  ```mermaid
    36  graph LR
    37  subgraph Matcher
    38  mir[IndexReport]
    39  libvuln[Libvuln]
    40  vr[VulnerabilityReport]
    41  mir --> libvuln --> vr
    42  end
    43  db[(Database)] -.-> mir
    44  ```
    45  
    46  When a claircore.Manifest is submitted to Libindex, the library will index its constituent parts and create a report with its findings.
    47  
    48  When a claircore.IndexReport is provided to Libvuln, the library will discover vulnerabilities affecting it and generate a claircore.VulnerabilityReport.