Projects

Projects are logical groups representing hosts, applications, or container clusters for monitoring and analysis.

Implementation: Projects are managed through the Projects API (backend) and rendered in the Projects Views (frontend). The Project model defines the database schema and business logic.

Managing Projects

Creating Projects

  • Manual Creation: Through web interface (admin required)
  • Auto-Creation: Agents create projects automatically with agent.create: true

Project Types

  • Container: Individual containers
  • Group: Related project collections (e.g., microservices)
  • Application: Application-specific projects
  • Server: Host-level projects

Key Features

  • Hierarchy: Parent-child relationships for organization
  • Search: Find projects by name, tag, or hostname
  • Status: Health indicators and last update time
  • Statistics: Snapshot counts, vulnerabilities, scan times

Project View

Summary

Project overview with:

  • Name, type, description, status
  • Vulnerability counts by severity
  • Snapshot and dependency statistics
  • Parent/child project links

Sub Projects

View child projects in the hierarchy. Useful for:

  • Grouping microservices under parent applications
  • Organizing multi-container deployments
  • Structuring infrastructure by region or purpose

Alerts

Security vulnerabilities for this project:

  • Filter by severity (Critical, High, Medium, Low)
  • Alert states: Vulnerable, Acknowledged, Secure
  • CVE details and affected components

See Security Alerts for alert management.

Dependencies

All packages and components from the latest snapshot:

  • Search and filter dependencies
  • View package details, versions, licenses
  • Identify vulnerable dependencies
  • Export for compliance reporting

See Dependencies for SBOM details.

Setup

Deploy agents to monitor containers and submit SBOMs. The Setup tab generates pre-configured commands with authentication tokens and project IDs.

Docker Deployment

Run the agent as a container:

docker run \
  -e "KONARR_INSTANCE=<your-instance-url>" \
  -e "KONARR_AGENT_TOKEN=<auto-generated-token>" \
  -e "KONARR_PROJECT_ID=<project-id>" \
  -v "/var/run/docker.sock:/var/run/docker.sock:ro" \
  ghcr.io/42bytelabs/konarr-agent:latest

Environment Variables:

VariableDescription
KONARR_INSTANCEKonarr server URL
KONARR_AGENT_TOKENAuthentication token
KONARR_PROJECT_IDTarget project ID

Kubernetes Deployment

Deploy the agent in Kubernetes:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: konarr-agent
spec:
  replicas: 1
  template:
    spec:
      containers:
        - name: konarr-agent
          image: ghcr.io/42bytelabs/konarr-agent:latest
          env:
            - name: KONARR_INSTANCE
              value: "<your-instance-url>"
            - name: KONARR_AGENT_TOKEN
              value: "<auto-generated-token>"
            - name: KONARR_PROJECT_ID
              value: "<project-id>"

Deploy with: kubectl apply -f konarr-agent.yaml

Production: Use Kubernetes Secrets for KONARR_AGENT_TOKEN and configure RBAC permissions as needed.

Manual SBOM Upload

Upload pre-generated SBOM files for CI/CD integration, offline scanning, or non-container workloads.

Supported Formats: CycloneDX and SPDX (JSON/XML)

Generate SBOMs:

# Syft
syft <image-or-directory> -o cyclonedx-json > sbom.json

# Trivy
trivy image --format cyclonedx <image-name> > sbom.json

Upload via the project Setup tab. Files are validated and processed immediately for vulnerabilities.


Next Steps