Docker Build and Push to Azure Container Registry
This document explains how to build and push Docker images for the echo project to Azure Container Registry (ACR).
Docker Build and Push to Azure Container Registry
This document explains how to build and push Docker images for the echo project to Azure Container Registry (ACR).
Overview
The project consists of three containerized services:
- echo-docs: Next.js documentation site (port 3002)
- echo-server: Express.js backend API (port 3001)
- agent: Python LiveKit agent for real-time voice/video processing
Architecture
Dockerfiles
- apps/docs/Dockerfile: Multi-stage Next.js build with standalone output
- packages/server/Dockerfile: Multi-stage Node.js build with pnpm workspaces
- packages/agent/Dockerfile: Python build with UV package manager
CI/CD Pipeline
The GitHub Actions workflow .github/workflows/docker-build-push.yml automatically builds and pushes images on:
- Push to
mainbranch - Manual trigger via
workflow_dispatch
The pipeline runs three parallel jobs, one for each service.
Version Tagging Strategy
Images are tagged using the format: YYYY.MM.NN
- YYYY: Current year (e.g., 2025)
- MM: Current month (e.g., 11)
- NN: GitHub Actions run number (auto-incrementing, zero-padded)
Examples:
2025.11.01- First build in November 20252025.11.02- Second build in November 20252025.12.01- First build in December 2025 (counter resets each month)
Each image also gets tagged with latest for convenience.