Solution A: Per-User Docker Sidecar
Summary: Run a single-build Docker Pod on the user's behalf using their personal docker instance/socket
See ndslabs-docker
Solution B: Per-User Docker + NDS Labs Spec
Summary: Allow user to run and manage their own Jenkins instance using their personal docker instance/socket
See jenkins.json
Solution C: Centralized Internal CI
Summary: Run a centralized jenkins instance within Kubernetes to run Docker builds on all users' behalf
See service.yaml / controller.yaml
Solution D: Exo-Kubernetes CI
Summary: Spin up a raw VM on Nebula and run a jenkins instance on it outside of Kubernetes
See run-ci.sh
Solution E: Exo-Nebula CI
Summary: Use some CI server that does not reside on Nebula
For example:
- DockerHub
- TravisCI
- CircleCI
- etc