chore: migrate backend from Azure Web App to Container App
Deploy LangGraph Server to Azure Container App / build-and-deploy (push) Failing after 27s
Deploy LangGraph UI to Azure Static Web Apps / build-and-deploy (push) Failing after 37s

- Replace soc-langgraph Web App with Azure Container App (soc-cae environment)
- New URL: soc-langgraph.victorioussand-69befc84.southeastasia.azurecontainerapps.io
- Update deploy-langgraph.yml: Web App restart -> az containerapp update --image
- Update deploy-langgraph-ui.yml: VITE_LANGGRAPH_URL to Container App URL
- Container App: min 1 replica, max 3, CPU 1.0, Memory 2Gi, port 8080
- Update CLAUDE.md architecture and deployment docs

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
gongzhiyong
2026-04-12 22:58:44 +08:00
co-authored by Claude Sonnet 4.6
parent 48c9e0c854
commit 3ef9624385
3 changed files with 15 additions and 19 deletions
+1 -1
View File
@@ -31,7 +31,7 @@ jobs:
- name: Build Vite frontend
working-directory: langgraph
env:
VITE_LANGGRAPH_URL: https://soc-langgraph.azurewebsites.net
VITE_LANGGRAPH_URL: https://soc-langgraph.victorioussand-69befc84.southeastasia.azurecontainerapps.io
run: pnpm vite build
- name: Deploy to Azure Static Web Apps
+4 -10
View File
@@ -1,4 +1,4 @@
name: Deploy LangGraph Server to Azure Web App
name: Deploy LangGraph Server to Azure Container App
on:
push:
@@ -37,15 +37,9 @@ jobs:
--file langgraph/Dockerfile \
langgraph/
- name: Deploy to Web App
- name: Deploy to Container App
run: |
az webapp config container set \
--resource-group Operation \
az containerapp update \
--name soc-langgraph \
--container-image-name socsocacr.azurecr.io/soc-langgraph:${{ github.sha }} \
--container-registry-url https://socsocacr.azurecr.io \
--container-registry-user socsocacr \
--container-registry-password $(az acr credential show --name socsocacr --resource-group Operation --query "passwords[0].value" -o tsv)
az webapp restart \
--resource-group Operation \
--name soc-langgraph
--image socsocacr.azurecr.io/soc-langgraph:${{ github.sha }}
+10 -8
View File
@@ -42,9 +42,9 @@ sshpass -p xiaohei ssh xiaohei@192.168.30.30 "cd ~/SOC && make dev"
salmon-mushroom-0d8872e00.7.azurestaticapps.net
Vite SPA + @langchain/langgraph-sdk/react useStream
↓ SSE
[Azure Web App] soc-langgraph (southeastasia)
soc-langgraph.azurewebsites.net
Node.js 20 LTS + tsx src/agent/server.ts (production mode, port 2024)
[Azure Container App] soc-langgraph (southeastasia)
soc-langgraph.victorioussand-69befc84.southeastasia.azurecontainerapps.io
Node.js 20 LTS + langgraphjs dev (port 8080), min 1 replica
↓ HTTP
[外部服务]
├── Azure OpenAI (gpt-5.4) ← 所有 Agent LLM(含 Supervisor 路由)
@@ -181,16 +181,18 @@ SERPER_API_KEY
DAYTONA_API_KEY, DAYTONA_API_URL
# Frontend (Vite build-time)
VITE_LANGGRAPH_URL=https://soc-langgraph.azurewebsites.net
VITE_LANGGRAPH_URL=https://soc-langgraph.victorioussand-69befc84.southeastasia.azurecontainerapps.io
```
## Deployment
### 后端 (soc-langgraph)
- **Azure Web App**: Node.js 20, B1 Linux, Southeast Asia, Operation 资源组
- **启动命令**: `bash startup.sh`(tsx src/agent/server.ts,production 模式)
- **WEBSITES_PORT**: 2024
- **CI/CD**: ACR cloud build → Web App container update
- **Azure Container App**: Southeast Asia, Operation 资源组
- **Environment**: soc-cae (victorioussand-69befc84.southeastasia.azurecontainerapps.io)
- **URL**: https://soc-langgraph.victorioussand-69befc84.southeastasia.azurecontainerapps.io
- **容器**: socsocacr.azurecr.io/soc-langgraph:latest, port 8080
- **Scale**: min 1 replica, max 3 replicas, CPU 1.0, Memory 2Gi
- **CI/CD**: ACR cloud build → Container App update (az containerapp update --image)
### 前端 (soc-langgraph-ui)
- **Azure Static Web App**: East Asia