Skip to content

Container Management

Container management is the core of Ops Atlas. Every container running on your configured Docker hosts is discovered, monitored, and controllable from the UI.

Container Operations

The following actions are available for each container:

ActionDescription
StartStart a stopped container
StopGracefully stop a running container
RestartStop then start the container
PauseFreeze all processes in the container
UnpauseResume a paused container

All actions are executed via the Docker API over SSH to the target host.

Viewing Container Details

Logs

View container logs in real-time with streaming output. Logs are fetched directly from the Docker daemon — no log aggregation setup required.

GET /api/services/{env}/{containerId}/logs

Exec

Open an interactive terminal session into a running container directly from the browser. Useful for debugging without SSH access to the host.

Environment Variables

Inspect the environment variables set on a running container. This reads from the container's runtime config, not from compose files.

Stats

Live resource usage for each container:

  • CPU — percentage utilization
  • Memory — usage vs. limit
  • Network — bytes sent/received

Auto-Discovery

Ops Atlas automatically discovers all containers on connected hosts. To keep the UI focused on your application containers, infrastructure containers are excluded by default.

INFO

Over 40 common infrastructure images are excluded out of the box, including: mysql, postgres, redis, nginx, traefik, haproxy, consul, vault, elasticsearch, kibana, grafana, prometheus, and more.

You can customize exclusion patterns in Settings > Container Discovery. Patterns match against the image name.

# Example exclusion patterns
postgres:*
redis:*
nginx:*
custom-infra/*

Health Checks

Ops Atlas detects container health status from multiple sources:

  1. Docker health check — if the container defines a HEALTHCHECK in its Dockerfile or compose file
  2. HTTP endpoint probing — configurable health endpoints per service
  3. TCP port check — verifies the container is accepting connections

Health status is displayed on both the dashboard and the operations view.

API Reference

List Containers

GET /api/services              # All containers across all environments
GET /api/services/{env}        # Containers in a specific environment

Container Actions

Actions are sent via the ContainerActionsController:

POST /api/containers/{env}/{containerId}/start
POST /api/containers/{env}/{containerId}/stop
POST /api/containers/{env}/{containerId}/restart
POST /api/containers/{env}/{containerId}/pause
POST /api/containers/{env}/{containerId}/unpause

TIP

Container actions require the OPERATOR or ADMIN role. Viewers can see container status but cannot perform actions.

Released under the MIT License.