63 lines
2.0 KiB
YAML
63 lines
2.0 KiB
YAML
version: "3.9"
|
|
|
|
# Identity Provider testing containers for LDAP, SAML, and OIDC integration tests.
|
|
# Usage: docker compose -f docker-compose.idp-testing.yml --profile idp up -d
|
|
|
|
networks:
|
|
stellaops-testing:
|
|
name: stellaops-testing
|
|
driver: bridge
|
|
|
|
services:
|
|
openldap:
|
|
image: osixia/openldap:1.5.0
|
|
profiles: ["idp"]
|
|
container_name: stellaops-openldap
|
|
hostname: openldap.stellaops.test
|
|
environment:
|
|
LDAP_ORGANISATION: "StellaOps Test"
|
|
LDAP_DOMAIN: "stellaops.test"
|
|
LDAP_ADMIN_PASSWORD: "admin-secret"
|
|
LDAP_CONFIG_PASSWORD: "config-secret"
|
|
LDAP_READONLY_USER: "true"
|
|
LDAP_READONLY_USER_USERNAME: "readonly"
|
|
LDAP_READONLY_USER_PASSWORD: "readonly-secret"
|
|
LDAP_TLS: "false"
|
|
ports:
|
|
- "3389:389"
|
|
- "3636:636"
|
|
volumes:
|
|
- ./fixtures/ldap/bootstrap.ldif:/container/service/slapd/assets/config/bootstrap/ldif/custom/50-bootstrap.ldif:ro
|
|
command: "--copy-service"
|
|
networks:
|
|
- stellaops-testing
|
|
healthcheck:
|
|
test: ["CMD", "ldapsearch", "-x", "-H", "ldap://localhost:389", "-b", "dc=stellaops,dc=test", "-D", "cn=admin,dc=stellaops,dc=test", "-w", "admin-secret"]
|
|
interval: 10s
|
|
timeout: 5s
|
|
retries: 5
|
|
start_period: 15s
|
|
|
|
keycloak:
|
|
image: quay.io/keycloak/keycloak:24.0
|
|
profiles: ["idp"]
|
|
container_name: stellaops-keycloak
|
|
hostname: keycloak.stellaops.test
|
|
environment:
|
|
KEYCLOAK_ADMIN: admin
|
|
KEYCLOAK_ADMIN_PASSWORD: admin-secret
|
|
KC_HEALTH_ENABLED: "true"
|
|
ports:
|
|
- "8280:8080"
|
|
volumes:
|
|
- ./fixtures/keycloak/stellaops-realm.json:/opt/keycloak/data/import/stellaops-realm.json:ro
|
|
command: ["start-dev", "--import-realm"]
|
|
networks:
|
|
- stellaops-testing
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "exec 3<>/dev/tcp/localhost/8080 && echo -e 'GET /health/ready HTTP/1.1\r\nHost: localhost\r\n\r\n' >&3 && cat <&3 | grep -q '\"status\":\"UP\"'"]
|
|
interval: 15s
|
|
timeout: 10s
|
|
retries: 10
|
|
start_period: 60s
|