Skip to content
@AstraOpsOrg

AstraOps

astraops
AstraOps

A tool to automate the deployment of containerized applications on AWS EKS securely within the user's account.

snake

AstraOps is a cloud deployment automation platform that simplifies the deployment of containerized applications on AWS EKS. The platform handles infrastructure provisioning, application deployment, and monitoring setup through a simple command-line interface.

Components

The AstraOps platform consists of three main components:

The backend orchestration engine that manages the deployment lifecycle. Built with Bun and Hono, it provides a REST API that coordinates Terraform for infrastructure provisioning, kubectl for Kubernetes deployments, and Helm for monitoring setup. Handles AWS service integrations and streams real-time deployment logs via SSE.

A command-line interface tool that serves as the entry point for developers. Built with TypeScript and distributed as standalone binaries for Linux, Windows, and macOS. Manages AWS IAM authentication, creates execution roles with least-privilege policies, and communicates with the AstraBack API to orchestrate deployments.

A reference implementation demonstrating the platform capabilities. A simple full-stack points counter application with React frontend, Express.js backend, and MongoDB database. Includes a complete CI/CD pipeline with GitHub Actions that automatically builds Docker images and deploys to AWS EKS using AstraOps.

How It Works

  1. Define your application services in an astraops.yaml file
  2. Run astraops-cli deploy to provision infrastructure and deploy
  3. AstraCLI authenticates with AWS and creates necessary IAM roles
  4. AstraBack orchestrates Terraform to create EKS cluster and VPC
  5. Application containers are deployed to Kubernetes
  6. Optional monitoring stack (Grafana + Prometheus) is installed
  7. Run astraops-cli destroy to tear down all infrastructure

Quick Start

Install the CLI:

npm install -g @astraops/astraops-cli

Configure environment variables and create an astraops.yaml file:

applicationName: my-app
services:
  - name: frontend
    image: my-frontend:latest
    port: 80

Deploy:

astraops-cli deploy --monitoring

Documentation

For detailed documentation, visit:

License

Apache License 2.0

Pinned Loading

  1. AstraBack AstraBack Public

    TypeScript

  2. AstraCLI AstraCLI Public

    TypeScript

Repositories

Showing 4 of 4 repositories

People

This organization has no public members. You must be a member to see who’s a part of this organization.

Top languages

Loading…

Most used topics

Loading…