
Clickhousectl Cloud Deploy
Deploy and manage ClickHouse Cloud resources with clickhousectl.
Install
npx skills add https://github.com/clickhouse/agent-skills --skill clickhousectl-cloud-deployWhat is this skill?
- ClickHouse Cloud
- clickhousectl deploy
- Infra provisioning
Adoption & trust: 792 installs on skills.sh; 458 GitHub stars; 2/3 security scanners passed (skills.sh audits).
Recommended Skills
Azure Deploymicrosoft/azure-skills
Azure Preparemicrosoft/azure-skills
Azure Storagemicrosoft/azure-skills
Azure Validatemicrosoft/azure-skills
Appinsights Instrumentationmicrosoft/azure-skills
Azure Resource Lookupmicrosoft/azure-skills
Journey fit
Common Questions / FAQ
Is Clickhousectl Cloud Deploy safe to install?
skills.sh reports 2 of 3 security scanners passed. Review the Security Audits panel on this page before installing in production.
SKILL.md
READMESKILL.md - Clickhousectl Cloud Deploy
{ "version": "0.2.0", "organization": "ClickHouse Inc", "date": "March 2026", "abstract": "Step-by-step workflow for deploying to ClickHouse Cloud using clickhousectl. Covers signing up for ClickHouse Cloud, authenticating the CLI, creating a cloud service, migrating local schemas, and connecting an application to the cloud service.", "references": [ "https://clickhouse.com/docs", "https://github.com/ClickHouse/clickhousectl", "https://clickhouse.cloud" ] } --- name: clickhousectl-cloud-deploy description: Use when a user wants to deploy ClickHouse to the cloud, go to production, use ClickHouse Cloud, host a managed ClickHouse service, or migrate from a local ClickHouse setup to ClickHouse Cloud. license: Apache-2.0 metadata: author: ClickHouse Inc version: "0.2.0" --- # Deploy to ClickHouse Cloud This skill walks through deploying to ClickHouse Cloud using `clickhousectl`. It covers account setup, CLI authentication, service creation, schema migration, and connecting your application. Follow these steps in order. ## When to Apply Use this skill when the user wants to: - Deploy their ClickHouse application to production - Host ClickHouse as a managed cloud service - Migrate from a local ClickHouse setup to ClickHouse Cloud - Create a ClickHouse Cloud service - Set up ClickHouse Cloud for the first time --- ## Step 1: Sign up for ClickHouse Cloud Before using any cloud commands, the user needs a ClickHouse Cloud account. **Ask the user:** "Do you already have a ClickHouse Cloud account?" **If they do not have an account**, explain: > ClickHouse Cloud is a fully managed service that runs ClickHouse for you — no infrastructure to maintain, automatic scaling, backups, and upgrades included. There's a free trial so you can get started without a credit card. > > To create an account, go to: **https://clickhouse.cloud** > > Sign up with your email, Google, or GitHub account. Once you're in the console, let me know and we'll continue with the next step. **Wait for the user to confirm** they have signed up or already have an account before proceeding. --- ## Step 2: Authenticate the CLI First, ensure `clickhousectl` is installed. Check with: ```bash which clickhousectl ``` If not found, install it: ```bash curl -fsSL https://clickhouse.com/cli | sh ``` Authenticate `clickhousectl` with a ClickHouse Cloud API key. ### Create an API key Guide the user through creating one in the ClickHouse Cloud console: > 1. Click the **gear icon** (Settings) in the left sidebar > 2. Go to **API Keys** > 3. Click **Create API Key** > 4. Give it a name (e.g., "clickhousectl") > 5. Select the **Admin** role for the key. Admin is needed because `cloud service query` auto-provisions a per-service query endpoint API key on first use, which requires permission to create keys. Developer-scoped keys can manage services but may not be able to complete the auto-provisioning step. > 6. Click **Generate API Key** > 7. **Copy both the Key ID and the Key Secret** — the secret is only shown once ### Authenticate clickhousectl with the key Ask the user to **open a new terminal tab in the same working directory** and run the login command there with their Key ID and Secret — this keeps the secret out of the chat session. Tell them to come back and let you know once it's done. ```bash clickhousectl cloud login --api-key <key> --api-secret <secret> ``` Both `--api-key` and `--api-secret` are required — if the user only has one, tell them both are needed. --- **To verify authentication works:** ```bash clickhousectl cloud org list ``` This should return the user's organization. --- ## Step 3: Create a cloud service Create a new ClickHouse Cloud service: ```bash clickhousectl cloud service create --name <service-name> ``` From the output, add the HTTPS host and port to `.env` as `CLICKHOUSE_HOST` and `CLICKHOUSE_PORT`. Make sure `.env` is gitignored. Then poll until the service state is `running`: ```bash cli