Local Setup
Learn how to set up and run DCM on your local machine.
Prerequisites
- Podman and
podman-composeinstalled - Go (for building the CLI)
- (Optional) A Kubernetes cluster with KubeVirt for the kubevirt-service-provider
Quick Start
Clone the control-plane repository and start the core platform (postgres, nats, control-plane, and dcm-ui):
git clone https://github.com/dcm-project/control-plane.git
cd control-plane/deploy
podman-compose up -dThe control-plane API is available at http://localhost:8080. The DCM UI is at
http://localhost:7007.
Running with the KubeVirt Service Provider
The kubevirt-service-provider is behind a compose profile and does not start
by default. To include it, set the required environment variables and activate
the kubevirt profile:
export KUBERNETES_NAMESPACE=vms
export KUBEVIRT_KUBECONFIG="/path/to/kubeconfig"
podman-compose --profile kubevirt up -dNote: The namespace set in
KUBERNETES_NAMESPACEmust already exist in your Kubernetes cluster.
Verifying the Deployment
Check that all services are running:
podman-compose psCheck the health endpoint:
curl http://localhost:8080/api/v1alpha1/healthIf you deployed with the KubeVirt provider, you can also list the registered providers:
curl http://localhost:8080/api/v1alpha1/providersSetting Up the CLI
The DCM CLI (dcm) lets you interact with the DCM control plane from the
command line. Clone the cli repository and
build the binary:
git clone https://github.com/dcm-project/cli.git
cd cli
make buildThe binary will be available at bin/dcm. You can move it to a directory in
your PATH:
sudo cp bin/dcm /usr/local/bin/By default, the CLI connects to the control plane at http://localhost:8080.
You can verify it’s working with:
dcm version