Senate

Services

Create and manage containerized applications in Senate

Services

Services are the core unit of deployment in Senate. Each service represents a containerized application running on a machine.

Overview

A service in Senate can be:

  • A Docker service - single container from an image, Dockerfile, or Git repository
  • A Compose service - multi-container application defined by Docker Compose

Service overview

Creating a Service

From the Dashboard

  1. Navigate to Services in the sidebar
  2. Click New Service
  3. Fill in the service details:
FieldDescriptionRequired
NameUnique name for your serviceYes
Typedocker or composeYes
MachineTarget machine for deploymentYes
ProjectOptional project groupingNo
  1. Click Create

Service Types

Docker Services

Single-container services with flexible source options:

  • Docker Image: Pull from Docker Hub or private registries
  • Dockerfile: Build from a Dockerfile (inline or from Git)
  • Git Repository: Clone and build from a repository

Compose Services

Multi-container applications defined by docker-compose.yml:

  • YAML Content: Paste your compose file directly
  • Git Repository: Clone and use compose file from repo

Service Configuration

Source Tab

Configure how your service is built and deployed. See Deployments for details.

Environment Tab

Set environment variables for your containers. See Environment Variables.

Domains Tab

Configure custom domains and SSL. See Domains.

Storage Tab

Set up persistent volumes. See Storage.

Ports Tab

Configure port bindings. See Ports.

Advanced Tab

Configure deployment strategies and advanced options:

  • Deployment Strategy: Rolling update or recreate
  • Health Checks: Container health verification (Coming Soon)
  • Resource Limits: CPU and memory constraints (Coming Soon)

Service Lifecycle

Starting and Stopping

From the service Overview tab:

  • Start: Start stopped containers
  • Stop: Gracefully stop running containers
  • Restart: Stop and start containers

Deploying

Click Deploy to:

  1. Pull/build the latest image
  2. Create new containers
  3. Perform rolling update (if configured)
  4. Remove old containers

Deleting

  1. Click the menu (⋮) on the service
  2. Select Delete
  3. Confirm deletion

Deleting a service removes all containers and associated domains. Volumes are preserved unless manually deleted.

Internal Networking

Services on the same machine can communicate via Docker networking:

# From another container on the same machine
http://myservice-abc123:3000

The internal hostname follows the pattern: {name}-{short-id}

On this page