Note: This documentation was written for an earlier version of cBioPortal. The information presented here may not apply to cBioPortal v7 and onwards.
Deploy with Kubernetes
Prerequisites
Official cBioPortal Helm chart can be used to easily deploy an instance on a Kubernetes cluster. Make sure you meet the following prerequisites before continuing with the usage instructions:
- You have access to a cluster (e.g. Minikube or AWS EKS). We recommend setting up a Minikube cluster on your local machine for development purposes.
- You have installed Helm on your system.
- You have read and write access to a mysql database server.
Usage instructions
Cluster & Database Setup
Step 1 - Add cBioPortal label to your cluster
Make sure your cluster is already set up and you have access to a node running on it. Instructions for this can vary, depending on your Kubernetes provider. Once your cluster is active, run the following command to add a label to the node on your cluster.
kubectl label nodes <your-node-name> node-group=cbioportal
Step 2 - Export database access credentials
cBioPortal needs access to a mysql database server hosting cancer study data. As mentioned in the prerequisites, you need access to a mysql database server for this. Instructions for this can vary, depending on your database server provider. Once you have a server available, download MSK's latest database dump here and add the data to your database server. Then, continue with the instructions below using your mysql server credentials.
Create a new values file called values.secret.yaml and add your database credential values.
container:
env:
- name: DB_USER
value: <your-db-user>
- name: DB_PASSWORD
value: <your-db-password>
- name: DB_CONNECTION_STRING
value: <your-db-connection_string>
Install cBioPortal
Now that your cluster and data sources have been successfully configured, you can install the cBioPortal helm chart.
Step 1 - Install Helm Chart
Add repository.
helm repo add cbioportal https://cbioportal.github.io/cbioportal-helm/
Install chart
helm install my-cbioportal cbioportal/cbioportal --version 0.1.6 -f path/to/values.secret.yaml
You should see something similar to this, indicating that the installation was successful.
NAME: my-cbioportal
LAST DEPLOYED: Thu Nov 14 14:15:18 2024
NAMESPACE: default
STATUS: deployed
REVISION: 1
TEST SUITE: None
Step 2 - Access cBioPortal through localhost
Run the following command to port-forward cBioPortal from the cluster to your local network.
kubectl port-forward deployment/cbioportal 10000:8080
cBioPortal should now be available at localhost on port 10000. Navigate to http://localhost:10000 in your browser to view it.