LogoLogo
GithubDiscord
  • Introduction
    • Overview
    • Features
    • Concepts
    • 🏯Use Cases
    • 🚀Implementations
  • Getting Started
    • Getting Started
    • Local Deployment
      • Platform
      • Studio
      • Mobile SDK
    • Cloud Deployment
      • AWS
  • Resources
    • Tutorials
    • Guides
  • References
    • Architecture
    • Platform APIs
    • FAQs
    • Glossary
    • Copyright & License
  • Contribute
    • How to contribute
    • Setup
      • Service setup
      • Studio
      • (Optional) Agent
Powered by GitBook
On this page
  • System requirements
  • Prerequisites
  • CREDEBL Installation Steps
  • Verify the Installation
  • Tearing Down the Infrastructure
  • Additional Notes
Edit on GitHub
  1. Getting Started
  2. Local Deployment

Platform

Installation guide for CREDEBL Platform Services

PreviousLocal DeploymentNextStudio

Last updated 9 days ago

Before installing the CREDEBL Platform services, it is essential to ensure that your environment meets certain prerequisites. Properly setting up these requirements will help facilitate a smooth installation process and optimal performance of the platform. Following these guidelines will help prevent potential issues and ensure that the CREDEBL Platform services are installed and operate as intended.

System requirements

Here is the list of software needed to get started:

  • Operating System: The platform supports Linux and macOS systems. Note that only X86_64 architecture is currently supported.

  • Git: Ensure you have Git installed (version 2.34.1 or higher)

  • Docker Engine: Required for containerization

    • Linux: Docker will be automatically installed by the setup script.

    • macOS:

      1. Install manually: Download Docker Desktop from .

      2. Launch Docker: After installation, open the Docker Desktop application.

  • Available Ports:

    The platform requires the following ports to be available on your machine:

    • 5432: Default PostgreSQL database port

    • 5000: CREDEBL API service

    • 4222: NATS messaging system

    • 6379: Redis caching service

    • 8080: Keycloak service port

    • 4000: Schema file server port

Ensure these ports are not blocked by your firewall or occupied by other applications.


Prerequisites

Here is the list of prerequisites software we will need for CREDEBL:

    • SendGrid is used for sending email. You must obtain an API key from your SendGrid account.

    • The platform uses Amazon S3 for secure file storage. Prepare your:

      • AWS Access Key ID

      • AWS Secret Access Key

      • S3 Bucket Name

      • AWS Region

CREDEBL Installation Steps

To setup, use the provided script which automatically checks your environment, installs Docker Engine, Docker Compose and Terraform on Linux, and runs the docker compose up command. This helps ensure all dependencies are met and streamlines the startup process for CREDEBL.

  1. Clone the Repository Begin by cloning the CREDEBL installation repository from GitHub. This repository contains all necessary scripts and configurations.

    git clone -b main https://github.com/credebl/install.git && cd install/local-deployment

  2. Grant Execution Permissions

    The installation script requires executable permissions to run.

    chmod +x setup.sh

    This command makes the setup.sh script executable.

  3. Execute the Setup Script

    Run the setup script to begin the automated installation process.

    ./setup.sh

What the script does:

  1. Environment Check: Verifies your OS (Linux/macOS) and architecture

  2. Installs Dependencies

    • Linux: Auto-installs Docker and Docker Compose

    • macOS: Requires manual Docker installation first

  3. Sets Up Terraform

    • Installs Terraform (if missing)

  4. Keycloak Configuration

    • Initializes Keycloack configuration

  5. User Input Prompt: Requests the following details:

    • Your machine's IP address (for network configuration).

    • SendGrid API Key (for email services).

    • AWS S3 credentials (for file storage).

  6. Execute Docker command

    • Executes docker compose up command.

The script will then deploy all necessary containers and services.


Verify the Installation

After installation, verify that all components are running correctly.

  • Run the following command to list all active Docker containers:

    docker ps
    • Initially, you should see 21 services running

    • After a few minutes, the seed service will automatically stop

    • Final running state should show 20 active services

Show all containers
Services
Credo-Controller
Agent-Service
Agent-Provisioning-Service
Verification-Service
Organization-Service
Ledger-Service
Issuance-Service
Connection-Service
User-Service
Cloud-Wallet-Service
Utility-Service
Webhook-Service
Geolocation-Service
Notification-Service
API-Gateway
Seed-Service
Postgres
Redis
Schema-File-Server
NATS
Keycloak
  • Access the CREDEBL API

Tearing Down the Infrastructure

When you no longer need the local infra, you can clean up all resources using the provided script.

  1. Grant Permissions to the Destroy Script

    Ensure the script has executable permissions:

    chmod +x destroy.sh
  2. Run the Destroy Script

    Execute the script to remove all Docker resources:

    ./destroy.sh

    This script will:

    1. Stop all running containers.

    2. Remove all Docker containers, volumes, and images associated with CREDEBL.

    3. Clean up any temporary files or network configurations.


Additional Notes

  • Firewall Configuration: If you encounter connection issues, ensure your firewall allows traffic on the ports listed in the prerequisites.

  • Troubleshooting: If containers fail to start, check the logs using:

    docker logs <container_name>

Once all containers are running, you can access the CREDEBL API at:

docker.com
http://localhost:5000/api
Sendgrid
AWS S3 Credentials