Machines
Manage multiple servers and deployment targets
Machines
Machines represent the servers where your services run. Senate supports deploying to multiple machines, including local and remote servers.
Overview
Senate creates a "Local" machine automatically when installed. You can add additional remote machines via SSH.

Machine Types
Local Machine
The server where Senate is running:
- Created automatically on first run
- Cannot be deleted
- Docker runs directly on this host
- Best for single-server deployments
Remote Machines
Any server accessible via SSH:
- Connect via SSH key or password
- Docker commands executed over SSH
- Supports any Linux distribution with Docker
- Enable multi-server architectures
Adding a Remote Machine
- Navigate to Machines
- Click Add Machine
- Configure the connection:
| Field | Description | Example |
|---|---|---|
| Name | Friendly name | production-1 |
| Host | IP or hostname | 192.168.1.100 |
| Port | SSH port | 22 |
| User | SSH username | root |
| Auth Type | Key or password | key |
SSH Key Authentication (Recommended)
For key-based authentication:
-
Generate a key pair in Senate:
- Click "Generate Key" in the form
- Copy the public key
-
Add to remote server:
# On the remote server echo "ssh-ed25519 AAAA... senate-generated" >> ~/.ssh/authorized_keys -
Test connection by clicking "Add Machine"
Password Authentication
Enter the SSH password directly. Less secure than key authentication.
Store SSH credentials securely. Use key authentication for production environments.
Machine Resources
View real-time metrics for each machine:
- CPU: Usage percentage and core count
- Memory: Used/total RAM
- Disk: Usage for each mount point
- Network: Bandwidth in/out

Machine Operations
View Details
Click a machine to see:
- System information (OS, kernel, architecture)
- Docker version and configuration
- Resource usage graphs
- List of services deployed
Containers Tab
View all Docker containers on the machine:
- Running, stopped, and all containers
- Container status, image, and ports
- Start/stop/restart operations
- View container logs
Gateway Tab
Manage the reverse proxy (Caddy):
- View configured routes
- Monitor SSL certificates
- Add custom routing rules
- View upstream health
Images Tab
Browse Docker images:
- List all images
- Image size and tags
- Pull new images
- Remove unused images
Volumes Tab
Manage Docker volumes:
- List all volumes
- View volume size
- Delete unused volumes
Networks Tab
View Docker networks:
- List networks
- Inspect network details
- View connected containers
Deploying to Machines
When creating a service, select the target machine:
- New Service → Select machine from dropdown
- Service will deploy to that machine
- Domain routing configured on that machine's Gateway
Removing a Machine
- Stop all services on the machine
- Click machine menu (⋮) → Delete
- Confirm deletion
Deleting a machine removes it from Senate but does not stop running containers on the remote server.
Related
- Services - Deploy to machines
- Gateway - Machine routing
- Multi-Server Guide - Setup guide