Quick start

It's easy to get started with Onepanel. First, you install the CLI (opctl) and then using opctl, you generate a params.yaml file and update it to configure your deployment. Once complete, you can access your deployment from any browser using your Kubernetes authentication token. Finally, you can run a Workflow or create a Workspace.


The steps in the Quick start allow you to quickly setup a Onepanel cluster for testing. To setup a production cluster with TLS and auto scaling enabled see instructions for your cloud provider.

You can also add components at later time to make this cluster production ready.

Before getting started, take a look at concepts to understand the different components in Onepanel.

Step 0: Create a Kubernetes cluster

Next, create a Kubernetes cluster in one of the following cloud providers:


Make sure Azure CLI (az) is installed before proceeding.

Run this az command to create a bare minimum cluster with 2 Standard_D4s_v3 nodes:

az aks create --resource-group <resource-group> --name <cluster-name> --location <region> \
--node-count 2 \
--node-vm-size Standard_D4s_v3 \
--node-osdisk-size 100 \
--min-count 2 \
--max-count 2 \
--enable-cluster-autoscaler \
--network-plugin azure \
--network-policy azure \
--enable-addons monitoring \

You can then get access credentials by running:

az aks get-credentials --resource-group <resource-group> --name <cluster-name> --admin

Step 1: Install Onepanel

  1. Download the latest opctl for your operating system from our release page.
# Download the binary
curl -sLO https://github.com/onepanelio/core/releases/latest/download/opctl-linux-amd64
# Make binary executable
chmod +x opctl-linux-amd64
# Move binary to path
mv ./opctl-linux-amd64 /usr/local/bin/opctl
# Test installation
opctl version
  1. Run the following command to initialize a params.yaml template for your provider:
opctl init --provider aks
  1. Populate params.yaml by following the instructions in the template, you can also refer to configuration file sections for more detailed information.

See configuration metallb for metallb specific details.

  1. Finally, run the following command to deploy Onepanel to your cluster:
opctl apply

If the command completes but it indicates that your cluster is not ready, you can check status again by running opctl app status. If you're still seeing issues, visit our Troubleshooting page.

  1. Once the deployment completes, the CLI will display the IP and wildcard domain you need to use to setup your DNS. You can also get this information again by running:
opctl app status
  1. Create the appropriate DNS record in your DNS provider based on the instructions above.

If you don't have a domain name handy or you're waiting for your DNS record to propogate, you can set up a hosts file to quickly test the deployment.

  1. Wait a few minutes and check the URL mentioned in the instructions above. Your applications should load with a screen prompting you to enter a token.

If the application is not loading, visit our Troubleshooting page for some steps that can help resolve most issues. If you are still having issues, join our Slack community or open an issue in GitHub.

  1. Depending on your provider, you may need to take the following steps to access the application:

No additional steps required.

  1. Use the following command to get your auth token to log into Onepanel:
opctl auth token

Step 2: Create a simple Workflow

Let's first create a simple Directed Acyclic Graph (DAG) Workflow Template:

  1. Click Workflows in the top menu.
  1. Click Create Template.
  1. Enter "Test DAG" for "Template Name", and select "DAG". This will pre-fill a sample DAG.

  1. Click Save to save your template.

  2. You should now be on the "Workflow details" page. Click Execute Workflow.

  1. A modal will be displayed, click Execute.

  1. The workflow will start executing. You can click on every task to see details and running logs.

  1. You have now setup Onepanel and run a simple Workflow.