Self-service cloud environments for everyone. Achieve deployment, networking, and security automation all at once with Architect.
Architect is the world's first DevOps-as-a-Service toolset designed to help democratize environment provisioning for engineers. With Architect, anyone can deploy any service, anywhere, for any reason with the push of a button.
Our unique approach to continuous delivery is powered by an embedded dependency resolver. By simply asserting your microservice dependenies, Architect is able to build a graph of your application and deploy the entire stack to your favorite cloud provider.
Architect's CLI, which provides the full developer experience needed to create components and operate local environments, is fully open-source. The CLI can deploy components locally using docker-compose, enrich the deployments with components found in Architect's Cloud registry, and allows developers to publish their own components to the registry both publicly and privately for free.
- Docker must be installed
- Node.js
v12
or higher must be installed
$ npm install -g @architect-io/cli
$ architect COMMAND
running command...
$ architect (--version)
@architect-io/cli/1.14.3-rc.2 linux-x64 node-v17.3.0
$ architect --help [COMMAND]
USAGE
$ architect COMMAND
...
architect autocomplete [SHELL]
architect components [QUERY]
architect components:versions [COMPONENT_NAME]
architect config:get OPTION
architect config:set OPTION VALUE
architect config:view
architect deploy [CONFIGS_OR_COMPONENTS]
architect destroy
architect dev [CONFIGS_OR_COMPONENTS]
architect environments [QUERY]
architect environments:create [ENVIRONMENT]
architect environments:destroy [ENVIRONMENT]
architect exec [RESOURCE] [FLAGS] -- [COMMAND]
architect help [COMMAND]
architect init
architect link [COMPONENTPATH]
architect login
architect logout
architect logs [RESOURCE]
architect platforms [QUERY]
architect platforms:create [PLATFORM]
architect platforms:destroy [PLATFORM]
architect register [COMPONENT]
architect task COMPONENT TASK
architect unlink [COMPONENTPATHORNAME]
architect validate [CONFIGS_OR_COMPONENTS]
architect whoami
display autocomplete installation instructions
USAGE
$ architect autocomplete [SHELL] [-r]
ARGUMENTS
SHELL shell type
FLAGS
-r, --refresh-cache Refresh cache (ignores displaying instructions)
DESCRIPTION
display autocomplete installation instructions
EXAMPLES
$ architect autocomplete
$ architect autocomplete bash
$ architect autocomplete zsh
$ architect autocomplete --refresh-cache
See code: @oclif/plugin-autocomplete
Search components you have access to
USAGE
$ architect components [QUERY] [--verbose] [-a <value>]
ARGUMENTS
QUERY Search term used to filter the results
FLAGS
-a, --account=<value> Architect account
--verbose
DESCRIPTION
Search components you have access to
ALIASES
$ architect components
$ architect components:search
$ architect component:search
$ architect component:search
See code: src/commands/components/index.ts
Search component versions of a particular component
USAGE
$ architect components:versions [COMPONENT_NAME] [--verbose] [-a <value>]
FLAGS
-a, --account=<value> Architect account
--verbose
DESCRIPTION
Search component versions of a particular component
ALIASES
$ architect component:versions
$ architect component:version
See code: src/commands/components/versions.ts
Get the value of a CLI config option
USAGE
$ architect config:get [OPTION] [--verbose]
ARGUMENTS
OPTION Name of a config option
FLAGS
--verbose
DESCRIPTION
Get the value of a CLI config option
See code: src/commands/config/get.ts
Set a new value for a CLI configuration option
USAGE
$ architect config:set [OPTION] [VALUE] [--verbose]
ARGUMENTS
OPTION Name of a config option
VALUE New value to assign to a config option
FLAGS
--verbose
DESCRIPTION
Set a new value for a CLI configuration option
See code: src/commands/config/set.ts
View all the CLI configuration settings
USAGE
$ architect config:view [--verbose]
FLAGS
--verbose
DESCRIPTION
View all the CLI configuration settings
ALIASES
$ architect config
See code: src/commands/config/view.ts
Create a deploy job on Architect Cloud
USAGE
$ architect deploy [CONFIGS_OR_COMPONENTS] [--verbose] [--auto-approve | -o <value> | ] [-a <value>] [-e
<value>] [--production ] [-d ] [-p <value>] [-i <value>] [-s <value>] [--deletion-protection | ] [-r] [--browser]
[--build-parallel]
ARGUMENTS
CONFIGS_OR_COMPONENTS Path to an architect.yml file or component `account/component:latest`. Multiple components are
accepted.
FLAGS
-a, --account=<value> Architect account
-d, --detached Run in detached mode
-e, --environment=<value> Architect environment
-i, --interface=<value>... [default: ] Component interfaces
-o, --compose-file=<value> Path where the compose file should be written to
-p, --parameter=<value>... [default: ] Component parameters
-r, --[no-]recursive [default: true] Toggle to automatically deploy all dependencies
-s, --secrets=<value> Path of secrets file
--auto-approve Automatically approve the deployment without a review step. Used for debugging and CI
flows.
--[no-]browser [default: true] Automatically open urls in the browser for local deployments
--build-parallel [default: false] Build docker images in parallel
--[no-]deletion-protection [default: true] Toggle for deletion protection on deployments
--production [deprecated] Please use --environment.
--verbose
DESCRIPTION
Create a deploy job on Architect Cloud
See code: src/commands/deploy.ts
Destroy components from an environment
USAGE
$ architect destroy [--verbose] [--auto-approve | | ] [-a <value>] [-e <value>] [-c <value>]
FLAGS
-a, --account=<value> Architect account
-c, --components=<value>... Component(s) to destroy
-e, --environment=<value> Architect environment
--auto-approve Automatically approve the deployment without a review step. Used for debugging and CI
flows.
--verbose
DESCRIPTION
Destroy components from an environment
See code: src/commands/destroy.ts
Run your stack locally
USAGE
$ architect dev [CONFIGS_OR_COMPONENTS] [--verbose] [-o <value> | -e <value> | | | ] [-p <value>] [-i
<value>] [-s <value>] [-r] [--browser] [--build-parallel] [-d]
ARGUMENTS
CONFIGS_OR_COMPONENTS Path to an architect.yml file or component `account/component:latest`. Multiple components are
accepted.
FLAGS
-d, --detached Run in detached mode
-e, --environment=<value> Architect environment
-i, --interface=<value>... [default: ] Component interfaces
-o, --compose-file=<value> Path where the compose file should be written to
-p, --parameter=<value>... [default: ] Component parameters
-r, --[no-]recursive [default: true] Toggle to automatically deploy all dependencies
-s, --secrets=<value> Path of secrets file
--[no-]browser [default: true] Automatically open urls in the browser for local deployments
--build-parallel [default: false] Build docker images in parallel
--verbose
DESCRIPTION
Run your stack locally
See code: src/commands/dev.ts
Search environments you have access to
USAGE
$ architect environments [QUERY] [--verbose] [-a <value>]
ARGUMENTS
QUERY Search term used to filter the results
FLAGS
-a, --account=<value> Architect account
--verbose
DESCRIPTION
Search environments you have access to
ALIASES
$ architect environments
$ architect envs
$ architect env
$ architect environments:search
$ architect envs:search
$ architect env:search
See code: src/commands/environments/index.ts
Register a new environment with Architect Cloud
USAGE
$ architect environments:create [ENVIRONMENT] [--verbose] [-a <value>] [--platform <value>] [--description <value>]
[--ttl <value>]
ARGUMENTS
ENVIRONMENT Name to give the environment
FLAGS
-a, --account=<value> Architect account
--description=<value> Environment Description
--platform=<value> Architect platform
--ttl=<value> The TTL of the environment in a duration of time, ex. 30d, 12h, or 30m
--verbose
DESCRIPTION
Register a new environment with Architect Cloud
ALIASES
$ architect environment:create
$ architect envs:create
$ architect env:create
See code: src/commands/environments/create.ts
Deregister an environment
USAGE
$ architect environments:destroy [ENVIRONMENT] [--verbose] [-a <value>] [--auto-approve] [-f]
ARGUMENTS
ENVIRONMENT Name of the environment to deregister
FLAGS
-a, --account=<value> Architect account
-f, --force Force the deletion even if the environment is not empty
--auto-approve Automatically apply the changes
--verbose
DESCRIPTION
Deregister an environment
ALIASES
$ architect environment:destroy
$ architect envs:destroy
$ architect env:destroy
$ architect env:deregister
$ architect environment:deregister
See code: src/commands/environments/destroy.ts
Exec into service instances
USAGE
$ architect exec [RESOURCE] [FLAGS] -- [COMMAND]
ARGUMENTS
COMMAND Command to run
RESOURCE Name of resource
FLAGS
-a, --account=<value> Architect account
-e, --environment=<value> Architect environment
-i, --[no-]stdin Pass stdin to the container. Only works on remote deploys.
-t, --[no-]tty Stdin is a TTY.
--verbose
DESCRIPTION
Exec into service instances
See code: src/commands/exec.ts
Display help for architect.
USAGE
$ architect help [COMMAND] [-n]
ARGUMENTS
COMMAND Command to show help for.
FLAGS
-n, --nested-commands Include all nested commands in the output.
DESCRIPTION
Display help for architect.
See code: @oclif/plugin-help
Initialize an architect component from an existing docker-compose file
USAGE
$ architect init [--verbose] [-o <value>] [-a <value>] [-n <value>] [--from-compose <value>]
FLAGS
-a, --account=<value>
-n, --name=<value>
-o, --component-file=<value> [default: architect.yml] Path where the component file should be written to
--from-compose=<value>
--verbose
DESCRIPTION
Initialize an architect component from an existing docker-compose file
See code: src/commands/init.ts
Link a local component to the host to be used to power local deployments.
USAGE
$ architect link [COMPONENTPATH] [--verbose]
FLAGS
--verbose
DESCRIPTION
Link a local component to the host to be used to power local deployments.
See code: src/commands/link.ts
Login to the Architect Cloud platform
USAGE
$ architect login [--verbose] [-e <value>] [-p <value>]
FLAGS
-e, --email=<value> Email
-p, --password=<value> Password
--verbose
DESCRIPTION
Login to the Architect Cloud platform
See code: src/commands/login.ts
Logout from the Architect registry
USAGE
$ architect logout [--verbose]
FLAGS
--verbose
DESCRIPTION
Logout from the Architect registry
See code: src/commands/logout.ts
Get logs from services both locally and remote
USAGE
$ architect logs [RESOURCE] [--verbose] [-a <value>] [-e <value>] [-f] [--since <value>] [--raw] [--tail
<value>] [--timestamps]
ARGUMENTS
RESOURCE Name of resource
FLAGS
-a, --account=<value> Architect account
-e, --environment=<value> Architect environment
-f, --follow Specify if the logs should be streamed.
--raw Show the raw output of the logs.
--since=<value> Only return logs newer than a relative duration like 5s, 2m, or 3h. Defaults to all logs.
Only one of since-time / since may be used. Only works on remote deploys.
--tail=<value> [default: -1] Lines of recent log file to display. Defaults to -1 with no selector, showing
all log lines otherwise 10, if a selector is provided.
--timestamps Include timestamps on each line in the log output.
--verbose
DESCRIPTION
Get logs from services both locally and remote
See code: src/commands/logs.ts
Search for platforms on Architect Cloud
USAGE
$ architect platforms [QUERY] [--verbose] [-a <value>]
ARGUMENTS
QUERY Search query used to filter results
FLAGS
-a, --account=<value> Architect account
--verbose
DESCRIPTION
Search for platforms on Architect Cloud
ALIASES
$ architect platform
$ architect platform:search
$ architect platforms
$ architect platforms:search
See code: src/commands/platforms/index.ts
Register a new platform with Architect Cloud
USAGE
$ architect platforms:create [PLATFORM] [--verbose] [-a <value>] [--auto-approve] [-t KUBERNETES|kubernetes] [-k
<value> | -h <value>] [--flag <value>]
ARGUMENTS
PLATFORM Name to give the platform
FLAGS
-a, --account=<value> Architect account
-h, --host=<value>
-k, --kubeconfig=<value> [default: ~/.kube/config]
-t, --type=<option> <options: KUBERNETES|kubernetes>
--auto-approve
--flag=<value>... [default: ]
--verbose
DESCRIPTION
Register a new platform with Architect Cloud
ALIASES
$ architect platforms:register
$ architect platform:create
$ architect platforms:create
See code: src/commands/platforms/create.ts
Deregister a platform from Architect
USAGE
$ architect platforms:destroy [PLATFORM] [--verbose] [-a <value>] [--auto-approve] [-f]
ARGUMENTS
PLATFORM Name of the platform to deregister
FLAGS
-a, --account=<value> Architect account
-f, --force Force the deletion even if the platform is not empty
--auto-approve Automatically apply the changes
--verbose
DESCRIPTION
Deregister a platform from Architect
ALIASES
$ architect platforms:deregister
$ architect platform:destroy
$ architect platforms:destroy
See code: src/commands/platforms/destroy.ts
Register a new Component with Architect Cloud
USAGE
$ architect register [COMPONENT] [--verbose] [--arg <value>] [-t <value>]
ARGUMENTS
COMPONENT Path to a component to register
FLAGS
-t, --tag=<value> [default: latest] Tag to give to the new component
--arg=<value>... Build arg(s) to pass to docker build
--verbose
DESCRIPTION
Register a new Component with Architect Cloud
ALIASES
$ architect component:register
$ architect components:register
$ architect c:register
$ architect comp:register
See code: src/commands/register.ts
Execute a task in the given environment
USAGE
$ architect task [COMPONENT] [TASK] [--verbose] [-l | -a <value> | | | ] [-o <value> | | -e <value> |
| | ]
ARGUMENTS
COMPONENT The name of the component that contains the task to execute
TASK The name of the task to execute
FLAGS
-a, --account=<value> Architect account
-e, --environment=<value> Architect environment
-l, --local Deploy the stack locally instead of via Architect Cloud
-o, --compose-file=<value> Path where the compose file should be written to
--verbose
DESCRIPTION
Execute a task in the given environment
ALIASES
$ architect task:exec
See code: src/commands/task.ts
Unlink a component from the host by path or name
USAGE
$ architect unlink [COMPONENTPATHORNAME] [--verbose] [--all]
FLAGS
--all Unlink all components registered locally
--verbose
DESCRIPTION
Unlink a component from the host by path or name
See code: src/commands/unlink.ts
Validate that an architect.yml is syntactically correct.
USAGE
$ architect validate [CONFIGS_OR_COMPONENTS] [--verbose]
ARGUMENTS
CONFIGS_OR_COMPONENTS Path to an architect.yml file or component `account/component:latest`. Multiple components are
accepted.
FLAGS
--verbose
DESCRIPTION
Validate that an architect.yml is syntactically correct.
ALIASES
$ architect component:validate
$ architect components:validate
$ architect c:validate
$ architect comp:validate
$ architect validate
See code: src/commands/validate.ts
Get the logged in user
USAGE
$ architect whoami [--verbose]
FLAGS
--verbose
DESCRIPTION
Get the logged in user
ALIASES
$ architect whoami
See code: src/commands/whoami.ts