Project is arranged as monorepository. Each of sub-modules has it's own installation instructions.
pip install quantum_serverless
- Run
cd client
pip install -e .
To follow the installation steps you will need the proper tools setup. We describe them in the infrastructure's README:
- Docker
- Configure helm values
- Terraform / Run helm
First of all you will need to build the docker images inside the docker folder. You can follow the docker build
examples described in the docker's README for that.
Once time you have your docker images built you must configure the values for helm. In the values file you will find several placeholders where you can fill with the needed value what image you will use for each service.
For more information you have every variable described in the README in case you need more configurations.
At this step you are going to need to have decided where are you going to deploy the services. You have mostly two options:
- Locally
- Cloud provider
For the first one, Locally. You will need to have a k8s approach installed in your machine. You have several options for that: Docker desktop, Minikube, kind, k3s, etc...
If this is your case you just need to execute the helm configuration on you k8s instance following the installation step described in the helm's README.
If you are interested into manage the infrastructure in a cloud provider the project supports two of them, currently: IBM Cloud, AWS.
Once time you select one you will need to run the terraform configuration as is described in the terraform's README. Depending of the provider that you decide to use you will neeed to refer to the documentation of each provider to see if you need to configure something:
values.yaml
with the configuration for the helm execution. In case you use terraform
you will need to fill those files with the information from the second step.
All you will need to build the docker image inside the manager folder. You can follow the docker build
examples described in the docker's README for that or simply run make build-manager
.