Skip to main content
In this quickstart, you deploy a small web server from a public container image to the Dallas location, reach it through Datum’s Application Load Balancer (ALB), and then delete it. The quickstart uses the general-purpose runtime class, which runs standard container images without changes, and the public docker.io/traefik/whoami image, which replies to each request with details about the request.
Compute is in preview, and the v1alpha API can change. Your project needs approved access to Compute before you can deploy, and Datum reviews access requests manually.

Before you begin

  • Create a Datum Cloud account, an organization, and a project. For more information, see Account setup.
  • Install datumctl and run datumctl login. For more information, see the datumctl quickstart.
  • Make sure that you have permission to create compute and networking resources in the project, for example, through the Compute Admin and Network Admin roles.
  • Install curl to test the URL.

Set up your project

Complete these steps once for each project that runs Compute workloads. Other Compute guides assume that you’ve completed them.
1

Select your project

Compute commands run against a project. To make your project the active context, run the following command:
Replace the following:
  • ORG_ID: the ID of your organization.
  • PROJECT_ID: the ID of your project.
To pick a project from a list instead, run datumctl ctx use with no arguments.
2

Install the compute plugin

The compute commands come from a plugin in the official Datum catalog. To install the plugin, run the following command:
For more information about plugins, see Using plugins.
3

Request access to Compute

To request access for your project and wait for a decision, run the following command:
Datum approves requests manually, so the wait can outlast the command’s default 30-minute timeout. If the command times out, run datumctl compute access to check the state of your request. Continue when the status is Active.

Deploy and publish a workload

1

Deploy the workload

To deploy the image to Dallas (us-central-1) and publish it on a public URL, run the following command:
The flags do the following:
  • --image: the container image to run. Compute requires the registry host in the image reference, such as docker.io.
  • --runtime-class=general-purpose: runs the image as a standard container in a lightweight virtual machine. Without this flag, Datum uses the unikernel class, which needs a specially packaged image.
  • --location=us-central-1: runs one Instance in Dallas.
  • --http-port=80: attaches Datum’s ALB to the workload and publishes port 80 of the container on it.
The command asks you two questions:
  1. The first time you deploy in a project, the command asks whether to create a network named default. Enter y.
  2. The command prints a plan and asks Apply? (Y/n). Enter y.
The command then creates the workload, waits for the Instance to start, and publishes the URL. The first deploy can take a few minutes. The output is similar to the following:
The rollout table adds a row each time the location’s progress changes, so your rows can differ. DURATION is how long the rollout took.The last line is the hostname of the ALB that --http-port attached to the workload. Your hostname is different. The command also saves the workload definition to workload.yaml in the current directory.
2

Send a request

To call your workload, run the following command:
Replace WORKLOAD_URL with the URL from the last line of the deploy output, such as https://stark-raven-b7k2m.datumproxy.net.The response lists the Instance’s hostname and IP addresses, followed by the request that the Instance received. The request section is similar to the following:
If curl reports that it can’t resolve the host, wait a minute and try again. A new hostname can take a few minutes to resolve.
3

See your workload and Instances

To list the workloads in your project, run the following command:
The output is similar to the following:
To list the workload’s Instances, run the following command:
The output is similar to the following:
The INTERNAL IP column shows the Instance’s private IPv6 address on the default network.

Clean up

To avoid using your project’s compute quota, delete the resources that you created by following these steps:
  1. To delete the workload, its Instance, and its ALB, run the following command:
  2. Review the summary that the command prints.
  3. Enter y to confirm. The command prints workload/hello deleted.
  4. Optional: If you don’t plan to deploy more workloads, delete the default network:

What’s next

Last modified on September 23, 2026