---
updatedAt: 2026-09-02T04:58:50.000Z
agentTools:
  siteIndex: https://docs.jfrog.com/llms.txt
  projectIndex: https://docs.jfrog.com/installation/llms.txt
---

# Product Dependencies Matrix

Xray requires Artifactory, RabbitMQ, and PostgreSQL. Distribution requires Artifactory and PostgreSQL.

Use this matrix to validate product-to-product and infrastructure dependencies before installation.

## How To Use This Matrix

* Review each product row before deployment design.
* Treat "recommended" dependencies as production best practice unless you have a validated exception.

<Table align={["left","left","left","left","left"]}>
  <thead>
    <tr>
      <th style={{ textAlign: "left" }}>
        Product
      </th>

      <th style={{ textAlign: "left" }}>
        Requires Artifactory?
      </th>

      <th style={{ textAlign: "left" }}>
        Requires Xray?
      </th>

      <th style={{ textAlign: "left" }}>
        Requires External DB?
      </th>

      <th style={{ textAlign: "left" }}>
        Requires RabbitMQ?
      </th>
    </tr>
  </thead>

  <tbody>
    <tr>
      <td style={{ textAlign: "left" }}>
        **Xray**
      </td>

      <td style={{ textAlign: "left" }}>
        ✅ Required
      </td>

      <td style={{ textAlign: "left" }}>
        ❌ No
      </td>

      <td style={{ textAlign: "left" }}>
        ✅ Required
      </td>

      <td style={{ textAlign: "left" }}>
        ✅ Required
      </td>
    </tr>

    <tr>
      <td style={{ textAlign: "left" }}>
        **Distribution**
      </td>

      <td style={{ textAlign: "left" }}>
        ✅ Required
      </td>

      <td style={{ textAlign: "left" }}>
        ❌ No
      </td>

      <td style={{ textAlign: "left" }}>
        ✅ Required
      </td>

      <td style={{ textAlign: "left" }}>
        ❌ No
      </td>
    </tr>

    <tr>
      <td style={{ textAlign: "left" }}>
        **Catalog**
      </td>

      <td style={{ textAlign: "left" }}>
        ✅ Required
      </td>

      <td style={{ textAlign: "left" }}>
        ❌ No
      </td>

      <td style={{ textAlign: "left" }}>
        ✅ Required
      </td>

      <td style={{ textAlign: "left" }}>
        ❌ No
      </td>
    </tr>

    <tr>
      <td style={{ textAlign: "left" }}>
        **JAS**
      </td>

      <td style={{ textAlign: "left" }}>
        ✅ Required
      </td>

      <td style={{ textAlign: "left" }}>
        ✅ Required
      </td>

      <td style={{ textAlign: "left" }}>
        ❌ No
      </td>

      <td style={{ textAlign: "left" }}>
        ❌ No
      </td>
    </tr>

    <tr>
      <td style={{ textAlign: "left" }}>
        **Workers**
      </td>

      <td style={{ textAlign: "left" }}>
        ✅ Required
      </td>

      <td style={{ textAlign: "left" }}>
        ❌ No
      </td>

      <td style={{ textAlign: "left" }}>
        ❌ No
      </td>

      <td style={{ textAlign: "left" }}>
        ❌ No
      </td>
    </tr>

    <tr>
      <td style={{ textAlign: "left" }}>
        **AppTrust**  
        Available with AppTrust Entitlement  
        **Supported From**

        * Artifactory 7.125.x or higher
        * Xray 3.130.5 or higher and [SBOM](/security/docs/how-to-enable-and-monitor-sbom-migration-in-xray#step-2-enable-the-sbom-service-in-helm-charts-helm-deployments-only) 
      </td>

      <td style={{ textAlign: "left" }}>
        ✅ Required
      </td>

      <td style={{ textAlign: "left" }}>
        ✅ Required
      </td>

      <td style={{ textAlign: "left" }}>
        ❌ No
      </td>

      <td style={{ textAlign: "left" }}>
        ❌ No
      </td>
    </tr>

    <tr>
      <td style={{ textAlign: "left" }}>
        **MCP Server**
      </td>

      <td style={{ textAlign: "left" }}>
        ✅ Required
      </td>

      <td style={{ textAlign: "left" }}>
        ❌ No
      </td>

      <td style={{ textAlign: "left" }}>
        ✅ Recommended (Bundled by default)
      </td>

      <td style={{ textAlign: "left" }}>
        ❌ No
      </td>
    </tr>
  </tbody>
</Table>

<Callout icon="📘" theme="info">
  Next Steps

  * [Installation Methods Matrix](requirements-matrix)
  * [License Requirements Matrix](license-matrix-pro-x-enterprise-x-enterprise)
</Callout>

## Related Topics

* [Requirements Matrix](requirements-matrix)
* [License Matrix](license-matrix-pro-x-enterprise-x-enterprise)
* [Software Dependencies Matrix](software-dependencies-matrix)
* [Database Support Matrix](database-support-matrix)
* [Getting Started](getting-started)

## Frequently Asked Questions

This section provides answers to frequently asked questions.

<Accordion title="FAQs" icon="plus">
  ##### Q: Does JFrog Xray require JFrog Artifactory to be installed first?

  **A:** Yes, Xray requires Artifactory. It also requires RabbitMQ and an external PostgreSQL database. All three dependencies must be in place before deploying Xray.

  ##### Q: Does JFrog Distribution require JFrog Xray?

  **A:** No, Distribution does not require Xray. Distribution only requires Artifactory, along with an external PostgreSQL database. RabbitMQ is not required for Distribution.

  ##### Q: Do Xray, Distribution, and Catalog all require an external database?

  **A:** Yes. All three require an external PostgreSQL database as a hard requirement, with no supported bundled-database path for production use.

  ##### Q: What Artifactory and Xray versions are required before deploying JFrog AppTrust?

  **A:** JFrog AppTrust requires Artifactory 7.125.x or higher and Xray 3.130.5 or higher. It also requires both Artifactory and Xray to be present, and is available only with an AppTrust entitlement.

  ##### Q: Does JFrog Workers require any product other than Artifactory?

  **A:** No, Workers only requires Artifactory. It does not require Xray, an external database, or RabbitMQ.
</Accordion>