Plans and project creation
Inspect plans
Before creating a project, compare the public catalogs. The command does not require authentication:
zenifra plans
zenifra plans --type http
zenifra plans --type database
zenifra plans --type analytics
zenifra plans --type cache
zenifra plans --type queue
zenifra plans --type storage --json
zenifra plans --type jobsOutput shows tables per category; for HTTP plans it includes the available capabilities (logs, metrics, health check, auto-scaling, custom subdomain, and network access). Use --json for scripts.
Create projects
With no arguments, the CLI opens an interactive wizard that asks for each field and shows examples and related documentation:
zenifra create projectThe wizard covers HTTP projects (image or GitHub), PostgreSQL, MariaDB, Valkey (Key‑Value, Cache, and Queues), and scheduled Jobs. ClickHouse and HTTP projects with a connected Git source use the non-interactive mode with --config.
For automation, pass a configuration file:
zenifra create project \
--name app-api \
--plan free \
--payment-mode hourly \
--config @examples/http-project.jsonThe CLI does not assume --plan or --payment-mode (except Jobs, which use per_minute); choose them from zenifra plans.
--config accepts these type_project values:
type_project | Use |
|---|---|
http | Application from an image, GitHub, or a connected Git source (GitHub and Forgejo) |
postgresql, mariadb | Relational databases |
clickhouse | Analytical database (analytics-* plans), with persistent storage |
valkey | Key‑Value, Cache, and Queues (config.profile) |
job | Scheduled job with a UTC cron |
payment_mode values: hourly, monthly, yearly, and per_minute (Jobs only). For HTTP projects, set config.exposure:
public: creates a public route and domain.private: creates the project without a public domain, suited to automations and internal routines.
Ready-made configuration examples are in the examples/ folder of the CLI repository (http-project.json, http-git-project.json, postgresql-project.json, clickhouse-project.json, job-project.json, and more).
Last updated on