LinuxCommandLibrary

hcloud

Manage Hetzner Cloud resources

TLDR

Show available commands and flags

$ hcloud
copy

Show available commands and flags for hcloud contexts
$ hcloud context
copy

Display help
$ hcloud -h
copy

SYNOPSIS

hcloud [GLOBAL-FLAGS] COMMAND [COMMAND-FLAGS] [ARGS]
Run hcloud --help for subcommands like server create, context create.

PARAMETERS

--debug
    Enable debug mode for verbose logging

--editor <EDITOR>
    Set editor for interactive commands (e.g., vim, nano)

--output {table,json}
    Choose output format; default is table

--token <TOKEN>
    Hetzner Cloud API token for authentication

--trace
    Enable trace mode for detailed request/response info

DESCRIPTION

The hcloud command is the official command-line interface (CLI) for Hetzner Cloud, a popular VPS provider. It enables users to manage cloud resources directly from the terminal, including servers, volumes, load balancers, networks, firewalls, SSH keys, images, snapshots, and more.

Key features include creating, listing, updating, and deleting resources with simple commands. For example, spin up a server with hcloud server create, attach volumes, configure networks, or manage load balancers. It supports multiple output formats like tables or JSON for scripting and automation. Contexts allow switching between projects seamlessly.

Written in Go, hcloud is lightweight, cross-platform (Linux, macOS, Windows), and open-source. Authentication uses an API token from the Hetzner Cloud Console. It handles pagination, selectors for filtering, and interactive modes for editing configurations. Ideal for DevOps workflows, CI/CD pipelines, and infrastructure as code. Debug and trace modes aid troubleshooting. Regularly updated to match Hetzner Cloud API v1.

CAVEATS

Requires valid API token from Hetzner Console; subject to API rate limits (e.g., 5 req/s per token). Not all features available in free tier. Always verify changes to avoid accidental deletions.

INSTALLATION

Via pip: pip install hcloud; Homebrew: brew install hcloud-cli; binaries from GitHub releases.

CONFIGURATION

Set token: hcloud context create myproject --token YOUR_TOKEN; list contexts: hcloud context list.

COMMON WORKFLOW

1. Create context with token.
2. List locations: hcloud location list.
3. Create server: hcloud server create --name myserver --type cx11 --image ubuntu-22.04.

HISTORY

Developed by Hetzner Online GmbH; first released in 2018 as open-source Go CLI. Evolved with Cloud API v1, adding support for new resources like placement groups (2020) and firewalls (2021). Actively maintained with frequent updates.

SEE ALSO

curl(1), jq(1), ssh(1)

Copied to clipboard