Container Local (Podman)

Run SWIM services directly on your machine using Podman Compose, without a Kubernetes cluster. This is the fastest way to explore the services and their APIs locally.

Prerequisites

Podman 4.x+ with podman-compose
Red Hat Developer Account (free) required to pull container images from registry.redhat.io

1. Red Hat Registry Authentication

The local infrastructure stack uses Red Hat container images for Keycloak (registry.redhat.io/rhbk/keycloak-rhel9) and AMQ Broker (registry.redhat.io/amq7/amq-broker-rhel9). These images require authentication with a Red Hat account.

A Red Hat Developer account is free and grants access to all Red Hat products for development and demonstration purposes. No paid subscription is required for local development. Production deployments require an enterprise subscription.

After creating your account, authenticate with the registry:

podman login registry.redhat.io

Enter your Red Hat Developer credentials when prompted. This step is required only once per machine.

2. Start the Full Stack

The root compose.yml starts all infrastructure and services:

cd swim-developer   # workspace root
podman compose up -d

3. Services and Ports

The compose stack exposes the following services:

MongoDB localhost:27017 (DNOTAM), localhost:27018 (ED-254)
Kafka + AKHQ localhost:9092 (broker), localhost:9980 (UI)
Artemis Brokers AMQP: 5671-5676, Console: 8161-8165
Keycloak localhost:8543

4. Start a Single Service

Each application also has its own compose file for isolated testing:

cd applications/swim-dnotam-consumer
podman compose up -d

5. View Logs and Stop

# Follow logs
podman compose logs -f

# Stop all containers
podman compose down