Skip to content

Products

Compliance Officer Service Expert-led compliance, end to end Compliance Portal Share security documents securely Open-source platform Deploy Probo on your own infrastructure

Resources

Probo stories How teams get compliant with Probo Blog Ideas and guidance from the Probo team Guides & tools Practical compliance guides and free tools Love from Customers What customers say about working with Probo Changelog Latest product updates Download Get the Probo Agent

Company

About The people and vision powering Probo Careers Join the team building Probo Brand assets Official logos and visual resources Security Review our security and compliance posture
Overview Understand Probo and its core concepts Product Explore Probo's GRC capabilities Developers Explore GraphQL, CLI, MCP, n8n, and webhooks Deployment Probo Cloud, self-hosting, and configuration

Explore

GitHub Explore our open-source compliance tools

Self-Hosted Quickstart

Run Probo locally with Docker Compose and set up your first compliance framework

View as Markdown

This guide walks you through deploying Probo locally with Docker Compose and setting up your first compliance framework. You should be up and running in about 15 minutes.

For a managed service or a production Kubernetes deployment, compare the deployment options.

  1. Clone the repository

    Terminal window
    git clone https://github.com/getprobo/probo.git
    cd probo
  2. Create the local environment

    Generate the required secrets and application settings:

    Terminal window
    cat > .env <<EOF
    PROBOD_ENCRYPTION_KEY=$(openssl rand -base64 32)
    PROBOD_AUTH_COOKIE_SECRET=$(openssl rand -base64 32)
    PROBOD_AUTH_PASSWORD_PEPPER=$(openssl rand -base64 32)
    PROBOD_TRUST_AUTH_TOKEN_SECRET=$(openssl rand -base64 32)
    PROBOD_BASE_URL=http://localhost:8080
    PROBOD_API_ADDR=0.0.0.0:8080
    PROBOD_API_CORS_ALLOWED_ORIGINS=http://localhost:8080
    EOF

    Keep .env private. These values protect encrypted data and authentication sessions.

  3. Start the services

    Terminal window
    docker compose -f compose.prod.yaml up -d

    This starts the Probo server, PostgreSQL, SeaweedFS, and the headless browser used for document generation.

  4. Verify the deployment

    Terminal window
    curl --fail http://localhost:8080/healthz
    docker compose -f compose.prod.yaml ps

    The health request should succeed and each service should report a running or healthy state. If it does not, inspect the application logs:

    Terminal window
    docker compose -f compose.prod.yaml logs probo
  5. Access the web interface

    Open http://localhost:8080 in your browser. Create your account and log in.

  6. Create your organization

    After logging in, create your first organization. This is the top-level entity that contains all your compliance data.

  7. Import a compliance framework

    Navigate to the frameworks section and import the framework relevant to your business — for example, SOC 2 or ISO 27001. This gives you a set of controls to work with.

You now have a running Probo instance with a compliance framework in place. From here, you can start mapping controls to your security practices, collecting evidence, and managing risks.