Machines
Learn how to create and manage machines in Andasy.
Machines are the virtual servers that run your applications on the Andasy platform. Each machine is a microVM (micro virtual machine). A lightweight, secure virtual machine optimized for running containerized applications.
What are Machines?
A machine is an isolated virtual server instance that runs your application code. When you deploy an application, Andasy creates at least one machine to run it. Each machine:
- Runs your containerized application in a secure, isolated environment
- Has CPU and memory resources allocated (as specified in your
andasy.hcl) - Can be started, stopped, restarted, or deleted independently
Machines vs Applications
Understanding the relationship between machines and applications is important:
- Application = The logical service (e.g., "my-api", "web-frontend") with its configuration
- Machine = A physical instance running that application
MicroVM Technology
Andasy uses microVMs (micro virtual machines) instead of traditional VMs or containers. MicroVMs provide:
- Better isolation - Each machine is fully isolated from others, improving security
- Fast startup - Machines start in milliseconds, enabling rapid scaling
- Resource efficiency - Lower overhead than traditional VMs while maintaining security
- Container compatibility - Your containerized applications run seamlessly
You don't need to understand microVM internals to use Andasy. Just know that each machine provides a secure, isolated environment for your application.
Listing machines
You can list machines associated with an application in the Andasy CLI by running the following command:
andasy machines list -a <app-name>
This command will display a list of machines associated with the specified application, along with their state and timestamps. You can use this information to monitor the health and performance of your application.
Stopping machine
This command will stop a particular machine of a running application.
andasy machines stop <machine-id> -a <app-name>
<machine-id> is optional. -a <app-name> is optional if andasy.hcl is present.
Resuming machine
This command will resume a particular machine of provided app service.
andasy machines resume <machine-id> -a <app-name>
<machine-id> is optional. -a <app-name> is optional if andasy.hcl is present.
Deleting machine
This command will delete a particular machine of a provided app service.
andasy machines delete <machine-id> -a <app-name>
<machine-id> is optional. -a <app-name> is optional if andasy.hcl is present.
View status of a machine
This command reports the live status of the application process running inside the machine. It checks whether your application's main process (defined by the Dockerfile's ENTRYPOINT or CMD) is currently running.
Process Status vs Health:
This command reports whether the application process is running, not whether the application is healthy or ready to serve traffic. The process may be running while the application is still initializing, or it may be running but not responding correctly. For comprehensive health monitoring, use andasy metrics or check your application logs with andasy logs.
andasy machines status <machine-id> -a <app-name>
<machine-id> is optional. -a <app-name> is optional if andasy.hcl is present in current directory.
When you deploy or update an application, Andasy manages machines automatically based on your configuration. You can also manually manage machines using the commands above.
Aliases
The machines command can be invoked using any of the following aliases:
machinesmachine
Flags
| Flag | Description |
|---|---|
-a, --app | The name of the app (required unless andasy.hcl is present) |
-h, --help | Show help for the command |
-j, --json | Output result in JSON format |
-v, --verbose | Verbose output |
Related Commands
andasy apps- Manage applicationsandasy deploy- Deploy applications (creates machines automatically)andasy logs- View logs from machinesandasy metrics- Monitor machine performance