Skip to content

CodeHeister/EchoPhase

Repository files navigation

EchoPhase

Introduction

EchoPhase is a platform for managing bots and integrating with various API services. It allows you to easily automate tasks, connect different services, and manage the bot lifecycle.

Commands

This project uses just as a command runner for Docker operations.

Prerequisites

Install just:

# macOS
brew install just

# Linux
curl --proto '=https' --tlsv1.2 -sSf https://just.systems/install.sh | bash -s -- --to /usr/local/bin

# Windows
scoop install just

Quick Start

Show all available commands:

just

Frontend

Build Docker image:

just docker-build-frontend

Tag Docker image:

just docker-tag-frontend          # uses default version
just docker-tag-frontend 1.2.3    # uses specific version

Push Docker image:

just docker-push-frontend         # uses default version
just docker-push-frontend 1.2.3   # uses specific version

All Docker commands at once:

just docker-publish-frontend         # uses default version
just docker-publish-frontend 2.0.0   # uses specific version

Configuration

Environment variables (.env):

  • FRONTEND_IMAGE - echophase-frontend
  • DOCKER_REGISTRY - localhost:5000
  • VERSION - 1.0.0 (default version)

Build context: ./frontend/

Backend

Build Docker image:

just docker-build-backend

Tag and push:

just docker-publish-backend         # uses default version
just docker-publish-backend 1.5.0   # uses specific version

Configuration

Environment variables (.env):

  • BACKEND_IMAGE - echophase
  • DOCKER_REGISTRY - localhost:5000
  • VERSION - 1.0.0 (default version)

Build context: ./src/

Build Everything

Build, tag and push all images:

just docker-publish-all            # uses default version
just docker-publish-all 1.0.0      # uses specific version

This creates the following tags:

  • localhost:5000/echophase-frontend:1.0.0
  • localhost:5000/echophase-frontend:latest
  • localhost:5000/echophase-backend:1.0.0
  • localhost:5000/echophase-backend:latest

Utility Commands

Show Docker configuration:

just docker-info

Clean local images:

just docker-clean

Clean build artifacts:

just clean

Publishing Images

Before continuing, make sure you have built the images and pushed them to any registry of your choice, since at the moment the images are not publicly available. It's best to do this locally (default build).

Launching local registry:

docker run -d -p 5000:5000 --name registry registry:2

Publishing to local registry:

just docker-publish-all 1.0.0

Launching Cluster

Launching default Helm:

helm install echophase helm --namespace echophase --create-namespace

Advanced Usage

Custom Registry

DOCKER_REGISTRY=myregistry.com just docker-publish-all 2.0.0

Custom Image Names

FRONTEND_IMAGE=my-frontend BACKEND_IMAGE=my-backend just docker-publish-all 1.5.0

Environment Variables Override

DOCKER_REGISTRY=myregistry.com \
FRONTEND_IMAGE=custom-frontend \
BACKEND_IMAGE=custom-backend \
VERSION=3.0.0 \
just docker-publish-all

Project Structure

.
├── frontend/         # Frontend application
├── src/              # Backend application
├── helm/             # Kubernetes Helm charts
├── compose/          # Docker Compose configuration
├── justfile          # Main task runner
├── just              # Specific tasks
├── .env              # Environment configuration

Docker Commands Reference

Command Description
just docker-build-frontend Build frontend image
just docker-build-backend Build backend image
just docker-build-all Build all images
just docker-tag-frontend [version] Tag frontend image
just docker-tag-backend [version] Tag backend image
just docker-push-frontend [version] Push frontend to registry
just docker-push-backend [version] Push backend to registry
just docker-publish-frontend [version] Build, tag, and push frontend
just docker-publish-backend [version] Build, tag, and push backend
just docker-publish-all [version] Build, tag, and push everything
just docker-info Show Docker configuration
just docker-clean Remove local images

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors