This guide provides step-by-step instructions for setting up the Credential Constructor and Datastore services. You will learn how to make the API accessible from your host for seamless interaction, explore the API using the Swagger UI, and enable tracing with Jaeger. This setup is part of the VC Project, a suite of services designed to manage verifiable credentials.
Prerequisites
Before starting, ensure that you have the following tools installed:
- Docker: Ensure Docker is installed and running on your system.
- Docker Compose: If you're using Docker Compose separately, install it. It may already be integrated into Docker.
- Git: Required to clone the repository.
What is VC?
VC stands for Verifiable Credential, a set of services that provide functionalities for handling verifiable credentials, including:
...
3. Expose Services to the Host
To interact with the API from your host machine, you need to expose the relevant service ports. We'll create a Docker Compose override file that maps the necessary ports.
Steps to expose the API:
Create a
docker-compose.override.yaml
file in the base directory.Add the following configuration to expose the
apigw
andJaeger
ports:
Code Block | ||
---|---|---|
| ||
version: "3"
services:
apigw:
ports:
- "8080:8080"
jaeger:
ports:
- "16686:16686" |
This will expose:
The ports for both the API Gateway and Jaeger services are configured in the .env
file. The following ports are used by default, but they can be customized by modifying the .env
file.
API Gateway:
The APIGW_HOST_PORT
is set in the .env
file. By default, it is set to 8080
.
Access the Swagger documentation:
Jaeger Tracing:
The JAEGER_HOST_PORT
is also set in the .env
file, defaulting to 16686
.
http://127.0.0.1:16686
- The
apigw
service on port8080
. - The
Jaeger
tracing UI on port16686
.
4. Start the Docker Containers
Start the Docker Containers
The start.sh
script will generate a signing key if one doesn’t exist and then With the ports configured, start the Docker containers using the following command:
docker compose up
...
. Run it with:
Code Block | ||
---|---|---|
| ||
./start.sh |
5. Access the Swagger UI for API Exploration
...
This will allow you to monitor the internal communications between the services in real-time.
Next Steps
After exploring the Swagger UI, you can interact with the API directly using
APIclients such as curl or Postman. For more information regarding the API, please see this page: Authentic Source using Datastore and Issuer to issue credentials
- Modify the service configurations as needed for your environment or development purposes.
...
- .