{"id":51043796,"url":"https://github.com/corridor/kubernetes-cp","last_synced_at":"2026-06-22T12:30:49.270Z","repository":{"id":351791975,"uuid":"1212327906","full_name":"corridor/kubernetes-cp","owner":"corridor","description":"The kubernetes setup for Corridor Platform - Decisioning Intelligence","archived":false,"fork":false,"pushed_at":"2026-04-20T10:50:04.000Z","size":17,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-05-25T00:41:49.974Z","etag":null,"topics":["aks","deployment","devsecops","eks","gcp","kubernetes"],"latest_commit_sha":null,"homepage":"https://www.corridorplatforms.com/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/corridor.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-04-16T09:12:32.000Z","updated_at":"2026-04-24T08:08:39.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/corridor/kubernetes-cp","commit_stats":null,"previous_names":["corridor/kubernetes-cp"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/corridor/kubernetes-cp","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/corridor%2Fkubernetes-cp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/corridor%2Fkubernetes-cp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/corridor%2Fkubernetes-cp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/corridor%2Fkubernetes-cp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/corridor","download_url":"https://codeload.github.com/corridor/kubernetes-cp/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/corridor%2Fkubernetes-cp/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34649816,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-22T02:00:06.391Z","response_time":106,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["aks","deployment","devsecops","eks","gcp","kubernetes"],"created_at":"2026-06-22T12:30:44.020Z","updated_at":"2026-06-22T12:30:49.258Z","avatar_url":"https://github.com/corridor.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# kubernetes-cp\n\nKubernetes manifests for deploying Corridor Platform with Kustomize.\n\n## Quickstart\n\n1. Get the docker credentials from the Corridor Team - Contact \u003csupport@corridorplatforms.com\u003e\n2. Create a kubernetes secret with the docker credentials\n3. Deploy the services (Note: For more customized setups, check the Configurations section below)\n4. Verify the rollout\n\n```bash\n# 1. Copy the provided docker credentials json file to /tmp/corridor-registry-key.json (or a preferred path)\n\n# 2. Create a kubernetes secret with the docker credentials\nkubectl create secret docker-registry corridor-registry-secret \\\n  --docker-server=us-central1-docker.pkg.dev \\\n  --docker-username=_json_key \\\n  --docker-password=\"$(cat /tmp/corridor-registry-key.json)\" \\\n  --namespace corridor\n\n# 3. Deploy the services (NOTE: Use --dry-run=server for safety)\nkubectl apply -k shared/redis\nkubectl apply -k overlays/corridor\n\n# 4. Verify rollout\nkubectl get pods -n corridor\nkubectl get svc -n corridor\nkubectl get ingress -n corridor\nkubectl get pods -n shared\nkubectl get svc -n shared\n```\n\n## Architecture\n\nThe deployment architecture is the following:\n\n- `corridor-app`: Primary API and Web application which serves the platform pages\n- `corridor-worker`: Background worker process for heavy execution tasks\n- `corridor-jupyter`: Jupyter/JupyterHub-facing service for ad-hoc analytics\n- Shared persistent volumes for data, uploads, notebooks, Jupyter state, and backups\n- A single ingress which routes `/` to the app-service and `/jupyter` to jupyter-service\n\n## Cloud Compatibility\n\nThis repo is cloud agnostic.\n\nIt can be used on any Kubernetes cluster, including managed Kubernetes offerings such\nas GKE from Google Cloud, EKS from AWS, AKS from Azure, OpenShift from RedHat, etc.\n\n## Layout\n\n```text\nbase/                Reusable application manifests\nshared/redis/        Shared Redis deployment for one or more Corridor environments\noverlays/corridor/   Minimal deployable overlay with placeholder configuration\n```\n\nIt is possible to host multiple instances of corridor - for example:\n`overlays/prod`, `overlays/staging`, `overlays/dev`. Or `overlays/team1` and `/overlays/team2`\n\n## Configure\n\nFeel free to configure the kubernetes setup based on your needs. Some common configurations are:\n\n- By default the `kustomization.yaml` uses the `latest` tag. To use a older version of Corridor,\n  set the docker image tag in `overlays/corridor/kustomization.yaml` \u003e `newTag` variable.\n- Set the public hostname based on your egress domain name in\n  `overlays/corridor/kustomization.yaml`\n- Set database, Redis, and application-specific settings in\n  `overlays/corridor/configs/api_config.py`\n- If your cluster uses a different RWX storage class, update the PVC patches in\n  `overlays/corridor/kustomization.yaml`.\n- Configure TLS secret keys etc in `base/ingress.yaml`\n- Configure other nginx configs like gzip/timeout etc. in `base/ingress.yaml`\n- Change Memory requests and limits in the respective `base/*.yaml` files for that service.\n\n## FAQs\n\n**My pod is showing `ImagePullBackOff`**\n\nIf your pod events show `ImagePullBackOff` or registry authorization errors -\u003e The\nimage authentication is likely the culprit. Double check if the correct docker credentials\nare added to the kubernetes secret\n\n**App is taking a long time to start**\n\nThe app deployment runs a database migration in an init container before the main API starts.\nThis can be decoupled to reduce restart time.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcorridor%2Fkubernetes-cp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcorridor%2Fkubernetes-cp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcorridor%2Fkubernetes-cp/lists"}