services: redis: image: redis network_mode: host volumes: - ./redis/redis.conf:/redis.conf:ro command: [ "redis-server", "/redis.conf" ] healthcheck: test: [ "CMD", "redis-cli", "ping" ] interval: 10s timeout: 30s retries: 3 upstream: image: dexidp/dex user: "1000" network_mode: host volumes: - ./dex-provider:/conf:ro command: [ "dex", "serve", "/conf/dex.config.yaml" ] client1: image: pierre42100/oidc_test_client user: "1000" network_mode: host environment: - LISTEN_ADDR=0.0.0.0:8011 - PUBLIC_URL=http://127.0.0.1:8011 - CONFIGURATION_URL=http://localhost:8000/.well-known/openid-configuration - CLIENT_ID=testclient1 - CLIENT_SECRET=secretone client2: image: pierre42100/oidc_test_client user: "1000" network_mode: host environment: - LISTEN_ADDR=0.0.0.0:8012 - PUBLIC_URL=http://127.0.0.1:8012 - CONFIGURATION_URL=http://localhost:8000/.well-known/openid-configuration - CLIENT_ID=testclient2 - CLIENT_SECRET=secrettwo basicoidc: image: rust user: "1000" network_mode: host depends_on: redis: condition: service_healthy environment: - STORAGE_PATH=/storage - DISABLE_LOCAL_LOGIN=true - USE_REDIS=true - REDIS_PASSWORD=secretsecret #- RUST_LOG=debug volumes: - ../:/app - ./storage:/storage - ~/.cargo/registry:/usr/local/cargo/registry command: - bash - -c - cd /app && cargo run