BUILD_GUIDE.md
Fast, Simple, Powerful RPA Automation Platform Deployment Guide
Quick Start ยท Server Deployment ยท Client Deployment ยท FAQ
</div>| OS | Version | Support Status |
|---|---|---|
| Windows | 10/11 | โ Primary Support |
| Component | Minimum | Recommended |
|---|---|---|
| CPU | 2 cores | 4 cores+ |
| Memory | 4GB | 8GB+ |
| Disk | 10GB available | 20GB+ |
| Network | Stable internet connection | - |
| Tool | Version | Description |
|---|---|---|
| Node.js | >= 22 | JavaScript runtime |
| Python | 3.13.x | RPA engine core |
| Java | JDK 8+ | Backend service runtime |
| pnpm | >= 9 | Node.js package manager |
| UV | 0.8+ | Python package manager |
| 7-Zip | - | Create deployment archives |
| SWIG | - | Connect Python with C/C++ |
<details> <summary>๐ฆ <b>Installation Methods (Click to expand)</b></summary>๐ Core Dependency ยท AstronRPA requires Python 3.13.x as the RPA engine core
# Visit https://www.python.org/downloads/
# Download and install Python 3.13.x
winget install Python.Python.3.13
choco install python --version=3.13.x
After installation, remember your Python installation path for later configuration:
| Installation Method | Typical Path |
|---|---|
| ๐ข Official Installer | C:\Users\{username}\AppData\Local\Programs\Python\Python313\ |
| ๐ต Chocolatey | C:\Python313\ or C:\tools\python3\ |
๐ก Important Note:
{installation_directory}\python.exeC:\Users\{username}\AppData\Local\Programs\Python\Python313\python.exe<details> <summary>๐ฆ <b>Installation Methods (Click to expand)</b></summary>โก Fast Package Management ยท Next-generation Python package manager, 10-100x faster than pip
# Method 1: Official installation script (Recommended)
powershell -c "irm https://astral.sh/uv/install.ps1 | iex"
# Method 2: Using pip
pip install uv
# Method 3: Using Chocolatey
choco install uv
uv --version
# โ Should display something like: uv 0.8.x (xxxxx)
๐ Learn More: UV Official Documentation
<details> <summary>๐ฆ <b>Installation Methods (Click to expand)</b></summary>๐ฆ Efficient Package Management ยท Disk space-saving Node.js package manager
# Method 1: Using npm (Recommended)
npm install -g pnpm@latest
# Method 2: Windows PowerShell
iwr https://get.pnpm.io/install.ps1 -useb | iex
# Method 3: macOS/Linux
curl -fsSL https://get.pnpm.io/install.sh | sh -
# Method 4: Homebrew (macOS)
brew install pnpm
pnpm --version
# โ Should display 9.x.x or higher
๐ Learn More: pnpm Official Documentation
<details> <summary>๐ฅ <b>Download & Install (Click to expand)</b></summary>๐ณ Containerization Platform ยท For rapid server deployment
| Platform | Download Link |
|---|---|
| ๐ช Windows/Mac | Docker Desktop |
| ๐ง Linux | Docker Engine |
docker --version
docker compose --version
# โ Confirm both Docker and Docker Compose are installed correctly
<details> <summary>๐ฅ <b>Download & Install (Click to expand)</b></summary>๐ฆ Compression Tool ยท For creating deployment archive files
Official Website: https://www.7-zip.org/
Download and install to system, or extract to a custom directory
</details># If installed to system path
7z
# Or use full path
"C:\Program Files\7-Zip\7z.exe"
<details> <summary>๐ฅ <b>Installation Steps (Click to expand)</b></summary>๐ Interface Generator ยท For connecting Python with C/C++ programs
Visit http://www.swig.org/download.html
Download swigwin-x.x.x.zip and extract to any directory
Add the directory containing swig.exe to PATH environment variable
For example: C:\swig\swigwin-4.1.1
swig -version
# โ Confirm SWIG is installed correctly
AstronRPA adopts a Server-Client architecture:
Server Deployment - Quick deployment using Docker
Client Deployment - Deploy using packaging scripts
Quick Deployment ยท Launch all server components with Docker Compose in one command
The server provides web management interface, API services, database and other core services.
git clone https://github.com/iflytek/astron-rpa.git
cd astron-rpa
# Enter Docker directory
cd docker
# Copy .env file
cp .env.example .env
# Modify casdoor service configuration in .env
CASDOOR_EXTERNAL_ENDPOINT="http://{YOUR_SERVER_IP}:8000"
# ๐ Start all services
docker compose up -d
# ๐ Check service status
docker compose ps
NAME STATUS PORTS
robot-service Up 30 seconds 0.0.0.0:8080->8080/tcp
ai-service Up 30 seconds 0.0.0.0:8001->8001/tcp
openapi-service Up 30 seconds 0.0.0.0:8002->8002/tcp
mysql Up 30 seconds 0.0.0.0:3306->3306/tcp
redis Up 30 seconds 0.0.0.0:6379->6379/tcp
# ๐ View service logs
docker compose logs -f
# ๐ Stop services
docker compose down
# ๐ Restart services
docker compose restart
# ๐ View specific service logs
docker compose logs -f robot-service
# โฌ๏ธ Update images
docker compose pull
docker compose up -d
๐ Detailed Configuration: Server Deployment Guide
Local Deployment ยท Deploy engine and desktop application on machines running RPA tasks
The client includes RPA execution engine and desktop management application, needs to be deployed on machines executing RPA tasks.
Suitable for production environments and end users.
Ensure Python 3.13.x is installed to a local directory (e.g., C:\Python313).
Environment Directory Structure:
Python313/
โโ DLLs/
โโ Doc/
โโ include/
โโ Lib/
โโ libs/
โโ Scripts/
โโ tcl/
โ
โโ LICENSE.txt
โโ NEWS.txt
โโ python.exe
โโ python3.dll
โโ python313.dll
โโ pythonw.exe
โโ vcruntime140.dll
โโ vcruntime140_1.dll
</details> <details> <summary><b>Step 2๏ธโฃ: Run Packaging Script</b></summary>โ ๏ธ Important Note: Use a clean Python installation without additional third-party packages to reduce package size.
Execute the build script from the project root directory:
# ๐ Full build (engine + frontend)
./build.bat --python-exe "C:\Program Files\Python313\python.exe"
# Or use default configuration (if Python is in default path)
./build.bat
# โณ Wait for operation to complete
# โ
Build successful when console displays "Full Build Complete!"
Execution Flow:
build/python_coreresources/python_core.7zView all available parameters:
./build.bat --help
Common Parameter Combinations:
# ๐ง Specify Python path
./build.bat --python-exe "D:\Python313\python.exe"
# ๐ง Specify 7-Zip path
./build.bat --sevenz-exe "D:\7-Zip\7z.exe"
# โญ๏ธ Build engine only, skip frontend
./build.bat --skip-frontend
# โญ๏ธ Build frontend only, skip engine
./build.bat --skip-engine
# ๐ Combine with short options
./build.bat -p "D:\Python313\python.exe" -s "D:\7-Zip\7z.exe"
Parameter Description:
| Parameter | Short | Description |
|---|---|---|
--python-exe <path> | -p | Specify Python executable path |
--sevenz-exe <path> | -s | Specify 7-Zip executable path |
--skip-engine | - | Skip engine (Python) build |
--skip-frontend | - | Skip frontend build |
--help | -h | Display help message |
If you need to manually build the frontend separately, you can execute the following steps:
<details> <summary>Click to expand manual build steps</summary>cd frontend
# ๐ฆ Install dependencies
pnpm install
# โ๏ธ Configure environment variables
pnpm set-env
# ๐ฅ๏ธ Build desktop application
pnpm build:desktop
</details> </details> <details> <summary><b>Step 3๏ธโฃ: Install Exe Package</b></summary>Tip: Use
build.bat --skip-engineto automatically complete the frontend build steps above.
Package completion path:
/frontend/packages/electron-app/dist/
Double-click the Exe file to install.
</details> <details> <summary><b>Step 4๏ธโฃ: Configure Server Address</b></summary>Modify the server address in resources/conf.yaml under the installation directory:
# 32742 is the default port, modify if changed
remote_addr: http://YOUR_SERVER_ADDRESS:32742/
skip_engine_start: false
</details>๐ก Tip: Replace
YOUR_SERVER_ADDRESSwith your actual server address
| Service | Address | Description |
|---|---|---|
| ๐ฅ๏ธ Desktop App | Auto-launch window | Desktop client |
| ๐ Backend Service API | http://localhost:32742 | Backend Gateway Service Nginx |
| ๐ Casdoor Service API | http://localhost:8000 | Authentication Service Casdoor |
# ๐ Check Docker service status
docker compose ps
# ๐ Verify API response
# Open in browser: http://{YOUR_SERVER_IP}:32742/api/rpa-auth/user/login-check (32742 is default port, modify if changed)
# If returns {"code":"900001","data":null,"message":"unauthorized"} then deployment is correct and connected
# ๐ Verify Casdoor service
# Open http://localhost:8000 in browser
# Casdoor authentication page should appear
Follow-up Verification:
# ๐ Check port usage
netstat -tulpn | grep :8080
# โ
Check Docker status
docker --version
docker compose --version
# ๐ View detailed error logs
docker compose logs
Common Causes:
# ๐ Check MySQL container status
docker compose ps mysql
# ๐ View MySQL logs
docker compose logs mysql
# ๐ Restart database service
docker compose restart mysql
# ๐ Check Python installation path
where python # Windows
which python # Linux/macOS
# ๐ Make sure to pass the Python executable file
โ๏ธ ./build.bat -p "C:\\Python313"
โ๏ธ ./build.bat -p "C:\\Python313\\python.exe"
Solutions:
# โ
Check all dependencies in preparation phase are fully installed
# ๐พ Check disk space
dir # Windows check available space
# ๐ Check network connectivity
# Open the following URL in your browser to see if there's a response
# http://localhost:32742 can be replaced with your deployed server address+port
http://localhost:32742/api/rpa-auth/user/login-check
# ๐ก๏ธ Check firewall settings
# Windows: Control Panel > System and Security > Windows Defender Firewall
# Linux: ufw status
# โ
Check server health status
curl http://localhost:32742/health
Common Causes:
# ๐ Check WebSocket endpoint
curl -i -N -H "Connection: Upgrade" -H "Upgrade: websocket" \
http://localhost:8080/ws
# ๐ Check proxy settings
echo $http_proxy
echo $https_proxy
Solutions:
# ๐งน Clear cache
pnpm store prune
rm -rf node_modules pnpm-lock.yaml
# ๐ฆ Reinstall
pnpm install
# โ
Check Node.js version
node --version # Requires 22+
Common Causes:
Error Message:
error: Microsoft Visual C++ 14.0 is required
or
swig.exe not found
Solution Steps:
1๏ธโฃ Download SWIG
swigwin-x.x.x.zip and extract to any directory2๏ธโฃ Add to System Environment Variables
swig.exe to PATH environment variableC:\swig\swigwin-4.1.13๏ธโฃ Verify Installation
swig -version
4๏ธโฃ Reinstall pywinhook
pip install pywinhook
Having issues? We're here to help!
</div>| Channel | Link | Description |
|---|---|---|
| ๐ง Technical Support | [email protected] | Contact technical team directly |
| ๐ฌ Community Discussion | GitHub Discussions | Exchange ideas with community |
| ๐ Issue Report | GitHub Issues | Submit bugs and feature requests |
| ๐ Full Documentation | Project Documentation | View detailed usage documentation |
โจ Congratulations on completing deployment! Now start your RPA automation journey โจ
</div>| Step | Content | Link |
|---|---|---|
| 1๏ธโฃ | ๐ Learn to Use | Read User Guide to learn how to create RPA processes |
| 2๏ธโฃ | ๐ง Component Development | Refer to Component Development Guide to develop custom components |
| 3๏ธโฃ | ๐ค Contribute | Check Contributing Guide to participate in project development |
| 4๏ธโฃ | ๐ฑ Production Deployment | Refer to Production Deployment Guide for production deployment |
You have successfully deployed AstronRPA server and client
Now you can start creating powerful RPA automation workflows!
Happy Automating! ๐คโจ
</div>