This project sets up a kind Kubernetes cluster named paradox with a custom node image containing network tools and configured for a local proxy.
- Docker
- Kind
- Local proxy running on port 9000
certs/zscaler.pem(if required for SSL interception, place it here before build)
Dockerfile: Custom image definition.kind-config.yaml: Cluster configuration (1 controller, 2 workers).scripts/: Helper scripts.Makefile: Command shortcuts.
-
Configure Proxy: Update
config/proxy.envwith your local proxy settings if they differ from defaults.Use Proxy Simulator (optional): If you need to simulate a corporate proxy locally:
make proxy-setup make proxy-start
Keep the proxy running in a separate terminal.
Important: Trust the simulator certificate on your host (required for Docker pulls):
make proxy-trust
Then export the simulator's certificate for the build:
make export-mitm-cert
Shortcut: You can also use the dev mode to automatically export the simulator cert and build:
make dev
-
Build the image (automatically attempts to export Zscaler cert):
make build
Note: If the script cannot find "Zscaler" in your Keychain, it will warn you. Please verify
certs/zscaler.pemcontains the correct certificate. -
Create the cluster:
make create
-
Verify setup:
make verify
-
All in one:
make all
The cluster nodes are configured to be named explicitly:
- Controller:
alpha - Workers:
gamma,segma(Note: Docker containers will still follow Kind's naming convention likeparadox-control-planebut the internal Kubernetes node objects will match these names).
The nodes are configured to use http://host.docker.internal:9000 as the proxy. Ensure your local machine has a proxy listener on port 9000.