esa-deploy
Alibaba Cloud ESA Pages Deployment
Overview
ESA Pages is Alibaba Cloud's edge computing platform for static site hosting with global CDN acceleration. This skill automates deployment workflows for React/Vite applications.
Prerequisites
- ESA CLI installed:
npm install esa-cli@latest -g - Alibaba Cloud account with AccessKey configured
- Logged in:
esa-cli login
Quick Start
# Navigate to app directory
cd app
# Build and deploy
npm run build && esa-cli deploy
ESA CLI Commands
Authentication
# Login to ESA (requires AccessKey)
esa-cli login
# Logout
esa-cli logout
Deployment
# Deploy current directory (requires esa.jsonc)
esa-cli deploy
# Deploy with explicit entry
esa-cli deploy ./dist
# View deployments
esa-cli deployments
Project Management
# Initialize new project
esa-cli init my-project
# View project info
esa-cli project
# Manage sites
esa-cli site
Domain Management
# Add custom domain
esa-cli domain add your-domain.com
# List domains
esa-cli domain list
# Remove domain
esa-cli domain remove your-domain.com
Route Management
# Add route
esa-cli route add -r your-domain.com -s <site-name>
# List routes
esa-cli route list
Local Development
# Start local dev server
esa-cli dev
# Dev with custom port
esa-cli dev --port 3000
Configuration
esa.jsonc
{
"name": "your-app-name",
"assets": {
"directory": "./dist",
"notFoundStrategy": "singlePageApplication"
},
"dev": {
"port": 18080
}
}
Environment Variables
Production environment variables should be set in .env.local before build:
# Required
VITE_SUPABASE_URL=https://xxx.supabase.co
VITE_SUPABASE_ANON_KEY=eyJxxx...
# Production settings
VITE_ENABLE_MSW=false
VITE_LOG_LEVEL=info
Deployment Checklist
- Close MSW Mock (
VITE_ENABLE_MSW=false) - Verify environment variables are correct
- Run
npm run buildsuccessfully - Check
dist/directory exists - Verify
esa.jsoncconfiguration - Run
esa-cli deploy
Common Issues
"esa.jsonc not found"
Ensure you're in the correct directory containing esa.jsonc:
cd app && esa-cli deploy
"Not logged in"
esa-cli login
Build fails
# Check Node version (>= 20.x)
node -v
# Clean install
rm -rf node_modules && npm install
# Rebuild
npm run build
Large bundle warning
Consider code splitting:
// vite.config.ts
export default defineConfig({
build: {
rollupOptions: {
output: {
manualChunks: {
'react-vendor': ['react', 'react-dom'],
'ui-vendor': ['@radix-ui/react-dialog', '@radix-ui/react-dropdown-menu'],
},
},
},
},
});
Deployment Output
After successful deployment:
╔═══════════════════════════════════════════════════════════════════════╗
║ 🚀 Deploy Success ║
║ ║
║ APP your-app-name ║
║ URL https://your-app.xxx.er.aliyun-esa.net ║
║ ║
║ TIP Add a custom domain: esa-cli domain add <DOMAIN> ║
╚═══════════════════════════════════════════════════════════════════════╝
References
- Environment Configuration references/environment-config.md
- Custom Domain Setup references/custom-domain.md
- CI/CD Integration references/cicd-integration.md
More from alibaba/opc-starter
test-driven-dev
[project] OPC-Starter 测试驱动开发规范。管理和执行 Playwright E2E 测试、演示模式测试、单元测试的完整工作流。适用于新增功能时补充测试用例、运行认证/注册/演示测试、维护测试规划文档。当用户提到测试、E2E、Playwright、演示、用例、质量、补充测试时使用。
1design-system-ui
Create distinctive, production-grade frontend interfaces with high design quality using Mobile First strategy. Analyzes design systems from screenshots, generates Tailwind CSS + Shadcn UI configurations, and retrofits existing projects. Optimized for Claude Opus 4.5 with structured decision trees and self-verification checkpoints.
1