lift install

Install a tool on the server using YAML-based lifecycle hooks with variable overrides, domain configuration, and multi-instance support.

lift install

Install a tool on the server using YAML-based lifecycle hooks. Tools are resolved in order: embedded registry, local cache, then the OneLift API (Strapi registry). Supports variable overrides, domain configuration, and multi-instance deployments.

Use lift catalog to browse all available tools before installing.

Options

FlagDescriptionDefault
--var KEY=VALUEOverride a tool variable. Can be repeated for multiple variables-
--domain <domain>Domain name for the tool (sets APP_DOMAIN variable)-
--name <instance>Instance name for multi-instance support (e.g., two PostgreSQL instances)-

Examples

# Install a tool with defaults
lift install postgresql

# Override the port variable
lift install redis --var WEB_PORT=6380

# Install with a domain for Traefik routing
lift install n8n --domain n8n.example.com

# Multiple instances of the same tool
lift install postgresql --name pg-analytics
lift install postgresql --name pg-main

Info: After installation, tool state (resolved variables, version, status) is saved to /etc/lift/tools/<instance>.json on the server. Use lift info <tool> to re-display credentials and URLs at any time.

Port Mapping

When installing a tool via the CLI, ports marked as expose: true in the tool manifest are automatically mapped to the host. This means the tool is accessible externally without any additional configuration.

For example, a tool with HTTP port 7350 and console port 7351 will have both ports mapped:

ports:
  - "7350:7350"
  - "7351:7351"
expose:
  - "7350"
  - "7351"