Skip to main content

Docker Images

This page documents all Docker container images provided by the SIROS Foundation for the SIROS ID platform.

Container Registry

All images are published to the GitHub Container Registry (GHCR):

ghcr.io/sirosfoundation/<image-name>

VC Platform Images

The Verifiable Credentials (VC) platform provides multiple services, each with standard and full variants.

Image Naming Convention

ImageDescription
ghcr.io/sirosfoundation/vc-<service>Standard build
ghcr.io/sirosfoundation/vc-<service>-fullFull build with SAML and VC 2.0 support

Available Services

ServiceStandard ImageFull Image
Verifierghcr.io/sirosfoundation/vc-verifierghcr.io/sirosfoundation/vc-verifier-full
Issuerghcr.io/sirosfoundation/vc-issuerghcr.io/sirosfoundation/vc-issuer-full
API Gatewayghcr.io/sirosfoundation/vc-apigwghcr.io/sirosfoundation/vc-apigw-full
Registryghcr.io/sirosfoundation/vc-registry
Persistentghcr.io/sirosfoundation/vc-persistent
Mock ASghcr.io/sirosfoundation/vc-mockas
UIghcr.io/sirosfoundation/vc-ui

Build Variants

Standard Build

The standard build provides core OID4VC functionality:

  • OpenID for Verifiable Credentials (OID4VCI, OID4VP)
  • SD-JWT VC credential format
  • OIDC authentication for issuers
  • Basic trust evaluation

Full Build (-full suffix)

The full build includes additional features via Go build tags:

Build TagFeature
samlSAML 2.0 Service Provider support for issuer authentication
vc20W3C Verifiable Credentials Data Model 2.0 support

Use the full build when:

  • Integrating with SAML-based Identity Providers (eduGAIN, InCommon, etc.)
  • Issuing credentials in W3C VC 2.0 format
  • Supporting both SD-JWT VC and VC 2.0 credential formats

Version Tags

Images are tagged with multiple version identifiers:

Tag PatternDescriptionExample
latestLatest build from main branchvc-verifier:latest
mainCurrent main branchvc-verifier:main
v{version}Semantic version releasevc-verifier:v1.2.3
v{major}.{minor}Minor version (latest patch)vc-verifier:v1.2
v{major}Major version (latest minor)vc-verifier:v1
{sha}Git commit SHAvc-verifier:abc1234
YYYYMMDD_HHmmssTimestamp buildvc-verifier:20260107_143052

Recommended for production: Use semantic version tags (e.g., v1.2.3) for reproducible deployments.

Trust Service Images

go-trust

AuthZEN-compliant trust evaluation service.

ImageDescription
ghcr.io/sirosfoundation/go-trustTrust evaluation service

Tags: Same tagging scheme as VC images (latest, main, v{version}, {sha})

docker pull ghcr.io/sirosfoundation/go-trust:latest

Wallet Backend Images

go-wallet-backend

Backend service for the SIROS ID wallet application.

ImageDescription
ghcr.io/sirosfoundation/go-wallet-backendWallet backend service

Tags: Same tagging scheme as VC images (latest, main, v{version}, {sha})

docker pull ghcr.io/sirosfoundation/go-wallet-backend:latest

Pulling Images

Authentication

Public read access is available for all images. For pulling rate-limited scenarios, authenticate with a GitHub token:

# Login to GHCR
echo $GITHUB_TOKEN | docker login ghcr.io -u USERNAME --password-stdin

Pull Examples

# Standard verifier (latest)
docker pull ghcr.io/sirosfoundation/vc-verifier:latest

# Full verifier with SAML support (specific version)
docker pull ghcr.io/sirosfoundation/vc-verifier-full:v1.2.3

# Standard issuer
docker pull ghcr.io/sirosfoundation/vc-issuer:latest

# Full issuer with SAML support
docker pull ghcr.io/sirosfoundation/vc-issuer-full:latest

# Trust service
docker pull ghcr.io/sirosfoundation/go-trust:latest

# Wallet backend
docker pull ghcr.io/sirosfoundation/go-wallet-backend:latest

Platforms

All images are built for multiple architectures:

ArchitecturePlatform
linux/amd64x86_64 (Intel/AMD)
linux/arm64ARM64 (Apple Silicon, AWS Graviton, etc.)

Docker automatically selects the correct platform for your system.

Choosing the Right Image

Decision Tree

Common Deployment Scenarios

ScenarioVerifier ImageIssuer Image
Basic OID4VC deploymentvc-verifiervc-issuer
Academic federation (eduGAIN)vc-verifier-fullvc-issuer-full
Government identity (SAML)vc-verifier-fullvc-issuer-full
Enterprise OIDC onlyvc-verifiervc-issuer
Multi-format credentialsvc-verifier-fullvc-issuer-full

Example Docker Compose

Standard Deployment

services:
verifier:
image: ghcr.io/sirosfoundation/vc-verifier:latest
restart: always
ports:
- "8080:8080"
volumes:
- ./config.yaml:/config.yaml:ro
environment:
- VC_CONFIG_YAML=config.yaml

issuer:
image: ghcr.io/sirosfoundation/vc-issuer:latest
restart: always
ports:
- "8081:8080"
volumes:
- ./issuer-config.yaml:/config.yaml:ro
environment:
- VC_CONFIG_YAML=config.yaml

trust:
image: ghcr.io/sirosfoundation/go-trust:latest
restart: always
ports:
- "8082:8081"
command: ["serve"]

mongo:
image: mongo:7
restart: always
volumes:
- mongo-data:/data/db

volumes:
mongo-data:

Full SAML Deployment

services:
verifier:
image: ghcr.io/sirosfoundation/vc-verifier-full:latest
restart: always
ports:
- "8080:8080"
volumes:
- ./config.yaml:/config.yaml:ro
- ./saml-metadata:/saml-metadata:ro
environment:
- VC_CONFIG_YAML=config.yaml

issuer:
image: ghcr.io/sirosfoundation/vc-issuer-full:latest
restart: always
ports:
- "8081:8080"
volumes:
- ./issuer-config.yaml:/config.yaml:ro
- ./idp-metadata:/idp-metadata:ro
environment:
- VC_CONFIG_YAML=config.yaml

mongo:
image: mongo:7
restart: always
volumes:
- mongo-data:/data/db

volumes:
mongo-data:

Source Code & CI/CD

ComponentRepositoryWorkflow
VC Servicessirosfoundation/vcdocker-publish.yaml
go-trustsirosfoundation/go-trustdocker-publish.yml
go-wallet-backendsirosfoundation/go-wallet-backenddocker-publish.yml

Next Steps