Skip to content

NiklasRosenstein/rise

Repository files navigation

Rise

Rise Web Dashboard Screenshot

A Rust-based platform for deploying containerized applications with minimal configuration.


 

Warning

Early Work in Progress

This project is in a very early experimental stage. It is approximately 99% coded by Claude AI (under technical guidance), which means:

  • The codebase is actively evolving and may contain bugs or incomplete features
  • APIs and interfaces may change frequently without notice
  • Documentation may be out of sync with the current implementation
  • Production use is not recommended at this stage

If you choose to use or experiment with Rise, please be aware that you're working with experimental software. Contributions, bug reports, and feedback are welcome, but please set expectations accordingly.

What is Rise?

Rise simplifies container deployment by providing:

  • Simple CLI for building and deploying apps
  • Multi-tenant projects with team collaboration
  • OAuth2 authentication via Dex
  • Multiple registry backends (AWS ECR, Docker)
  • Service accounts for CI/CD integration
  • Web dashboard for monitoring deployments

Features

  • Project & Team Management: Organize apps and collaborate with teams
  • OAuth2/OIDC Authentication: Secure authentication via Dex
  • Multi-Registry Support: AWS ECR, Docker Registry (Harbor, Quay, etc.)
  • Service Accounts: Workload identity for GitHub Actions, GitLab CI
  • Multi-Process Architecture: Separate controllers for deployments, projects, ECR
  • Embedded Web Frontend: Single-binary deployment with built-in UI

Quick Start

Prerequisites

  • Docker and Docker Compose
  • Rust 1.91+
  • mise (recommended for development)

Start Services

# Install development tools
mise install

# Start all services (postgres, dex, registry, backend)
mise backend:run

Services will be available at:

Default credentials:

  • Email: admin@example.com or test@example.com
  • Password: password

Build and Use CLI

# Build the CLI from source
cargo build --bin rise

# The CLI is now available as 'rise' (if using direnv)
# Or use the full path: ./target/debug/rise

rise login
rise project create my-app
rise deployment create my-app --image nginx:latest

# Local development
rise run --project my-app  # Build and run locally with project env vars

Install from crates.io

# Install the CLI and backend from crates.io
cargo install rise-deploy

# Verify installation
rise --version

Documentation

Full documentation is available in /docs:

Architecture

Rise uses a multi-process architecture:

Component Purpose
rise-backend (server) HTTP API with embedded web frontend
rise-backend (controllers) Deployment, project, and ECR reconciliation
rise (CLI) Command-line interface
PostgreSQL Database for projects, teams, deployments
Dex OAuth2/OIDC provider for authentication

Project Status

Production Ready:

  • ✅ OAuth2 PKCE authentication
  • ✅ Project & team management
  • ✅ Service accounts (workload identity for CI/CD)
  • ✅ AWS ECR integration with Terraform module
  • ✅ Kubernetes controller with Ingress authentication
  • ✅ Build integrations (Docker, Buildpacks, Railpack)
  • ✅ Embedded web frontend
  • ✅ Deployment rollback and expiration

In Development:

  • 🚧 Additional registry providers (GCR, ACR, GHCR)

Contributing

Contributions are welcome! See Local Development for development setup, code style, testing, and commit conventions.

License

[Add your license here]

About

Simply deploy your app.

Topics

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors 5