Automate SaiAdmin Deployment with Alibaba Cloud DevOps: A Step‑by‑Step CI/CD Guide
This tutorial walks you through using Alibaba Cloud's DevOps platform to create a full CI/CD pipeline for the SaiAdmin Vue3 + Webman admin framework, covering pipeline creation, source configuration, build commands, artifact handling, and Nginx deployment settings.
Introduction
SaiAdmin is a high‑quality, out‑of‑the‑box admin framework built with Vue3 on the front end and Webman (a high‑performance PHP HTTP service framework) on the back end. The official site is https://www.saithink.top.
Webman, based on Workerman, replaces the traditional php‑fpm architecture and supports HTTP services, websockets, IoT, games, TCP/UDP, and custom processes.
Alibaba Cloud DevOps (Yunxiao)
Yunxiao is Alibaba Cloud’s one‑stop DevOps platform that provides a complete toolchain for the software development lifecycle, supporting both public and private cloud deployments.
Pipeline Overview
The Yunxiao Flow pipeline is an enterprise‑grade, automated CI/CD tool that automates build, integration, verification, and deployment, enabling high‑quality, high‑efficiency delivery.
Step 1: Create a New Pipeline
Step 2: Configure Source Code
After creating the pipeline, go to the task node configuration page, click the button to add a pipeline source, and select the repository. Example repository path: /teaching/saithink.webman.tinywan.com Default branch: master. Keep other settings at their defaults.
Step 3: Configure Build and Upload
Select Node.js version 18.12.
Build command: yarn install && yarn build Artifact upload path (package directory):
dist/Step 4: Configure Host Deployment
Select your server group (e.g., [主机组]) and set the download path. The example uses a 1Panel container mount:
/opt/1panel/apps/openresty/openresty/www/sites/webman-https.tinywan.com/index/package.tgzDeployment script:
CODE=/opt/1panel/apps/openresty/openresty/www/sites/webman-https.tinywan.com/index
tar -zxvf $CODE/package.tgz -C $CODE/
rm -f $CODE/package.tgzSave and run the pipeline.
Step 5: Run and View Pipeline
After saving, click the run button. The pipeline will display a successful status upon completion. Logs can be viewed from the build task node.
Step 6: (Optional) Download Build Artifacts
After the pipeline finishes, an artifact such as Artifacts_3784159.tgz is generated. Extracting it yields the dist/ directory, which can be deployed manually.
Nginx Configuration
webman-https.tinywan.com.conf
server {
listen 80;
listen 443 ssl http2;
server_name webman-https.tinywan.com;
index index.php index.html index.htm default.php default.htm default.html;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Host $server_name;
proxy_set_header X-Real-IP $remote_addr;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
access_log /www/sites/webman-https.tinywan.com/log/access.log;
error_log /www/sites/webman-https.tinywan.com/log/error.log;
location ^~ /.well-known/acme-challenge {
allow all;
root /usr/share/nginx/html;
}
root /www/sites/webman-https.tinywan.com/index;
if ($scheme = http) {
return 301 https://$host$request_uri;
}
ssl_certificate /www/sites/webman-https.tinywan.com/ssl/fullchain.pem;
ssl_certificate_key /www/sites/webman-https.tinywan.com/ssl/privkey.pem;
ssl_protocols TLSv1.3 TLSv1.2 TLSv1.1 TLSv1;
ssl_ciphers EECDH+CHACHA20:EECDH+CHACHA20-draft:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5;
ssl_prefer_server_ciphers on;
ssl_session_cache shared:SSL:10m;
ssl_session_timeout 10m;
add_header Strict-Transport-Security "max-age=31536000";
error_page 497 https://$host$request_uri;
proxy_set_header X-Forwarded-Proto https;
ssl_stapling on;
ssl_stapling_verify on;
location /prod/ {
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header REMOTE-HOST $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://localhost:8288/;
}
}Mount Directory
/opt/1panel/apps/openresty/openresty/www/sites/webman-https.tinywan.com/indexSigned-in readers can open the original source through BestHub's protected redirect.
This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactand we will review it promptly.
Open Source Tech Hub
Sharing cutting-edge internet technologies and practical AI resources.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.
