用户登录
个人主页 用户中心 我的订单 添加授权 管理授权
退出登录
用户登录 用户注册
欢迎来到 UC建站系统

批量安装WordPress四种方案:宝塔脚本、WP-CLI、Docker Compose、全自动工具

做站群、批量建站、多客户托管运维的人迟早会遇到同一个问题:手动装网站太慢了。前年接手了一个活儿,帮一个做本地生活号的客户批量部署50个城市分站,每个站都是WordPress加一套主题、几个固定插件、统一的SEO配置。一开始我老老实实手动装:登录宝塔→创建站点→创建数据库→下载WordPress→配置wp-config→执行安装→装主题插件→改设置。第一个站装了18分钟,第二个站15分钟,第三个站14分钟,熟练之后大概12分钟一个。50个站按这个速度,不吃不喝也得干10个小时。装到第8个站的时候心态崩了,停下来搜批量方案。后来花了半天时间研究,最后用WP-CLI配合Shell脚本,写了一个循环,一行命令下去,剩下的42个站全自动装完了。从"手动12分钟一个站"变成了"1分半一个站",而且是全自动不用盯屏幕。这件事之后我认真研究了几种批量安装网站程序的方案,从最简单的宝塔面板脚本到最灵活的Docker编排,不同场景对应不同的最优解。

四种方案速览:从简单到复杂,从1个站到1000个站

方案难度适合规模费用核心优势
宝塔面板 bt 命令 + Shell⭐⭐5-100个站免费最简单的批量方式,3行命令
WP-CLI + Shell 脚本⭐⭐⭐10-500个站免费全流程自动化,含主题插件配置
Docker Compose 编排⭐⭐⭐⭐任意规模免费环境隔离最好,迁移最方便
Quick Build WP 等全自动工具1-20个站免费开源零命令行,填表单就搞定

一、方案一:宝塔面板 bt 命令 + Shell,最简单的批量建站方式

如果你用的是宝塔面板(或aaPanel),这是门槛最低的批量方案。宝塔面板内置了一套 `bt` 命令行工具,可以直接在SSH终端里调用面板的底层功能。

三步搞定批量建站

第一步:准备域名列表文件

# 创建 sites.txt,每行一个域名
beijing.mybrand.com
shanghai.mybrand.com
guangzhou.mybrand.com
shenzhen.mybrand.com

第二步:写一个3行Shell脚本

#!/bin/bash
# 读取域名列表,逐个创建站点(PHP 7.4)
while read domain; do
  bt add_site $domain 74
done < sites.txt

第三步:执行脚本

chmod +x add-batch.sh && ./add-batch.sh

`bt add_site` 这一条命令会自动完成以下操作:创建网站目录 → 配置Nginx站点 → 创建FTP账户 → 创建数据库 → 尝试申请SSL证书。对宝塔面板来说,这就是"一键建站"的批量版。

bt 命令的常用子命令

命令功能
bt add_site 域名 PHP版本ID创建网站(自动创建数据库和FTP)
bt delete_site 域名删除网站
bt 76查看SSL证书列表
bt 77强制续签所有SSL证书
bt restart重启面板服务

这个方案的局限:bt add_site 只是创建了空站点,不会自动安装WordPress等程序。建完站点之后还需要手动(或另外写脚本)把程序文件传进去、配置数据库。它解决的是"建站"这一步的批量,不是"装程序"这一步的批量。如果你需要全流程自动化,往下看WP-CLI方案。

二、方案二:WP-CLI + Shell,全流程自动化,从建站到装插件一条命令搞定

这是我自己最常用的方案。WP-CLI是WordPress官方出品的命令行管理工具,配合Shell脚本可以实现"创建数据库→下载WordPress→配置→安装→装主题→装插件→改设置"的全自动批量操作。

核心脚本:一次性完成所有步骤

#!/bin/bash

# ===== 配置变量 =====
DB_USER="root"
DB_PASS="你的数据库密码"
BASE_DIR="/www/wwwroot"
ADMIN_EMAIL="admin@yoursite.com"
THEME_SLUG="astra" # 要安装的主题

# 域名列表(一行一个域名)
SITES=(
  "beijing.mysite.com"
  "shanghai.mysite.com"
  "guangzhou.mysite.com"
)

# ===== 循环安装 =====
for SITE in "${SITES[@]}"; do
  echo "正在安装: $SITE"

  # 1. 创建数据库
  DB_NAME="${SITE//./_}_db"
  mysql -u"$DB_USER" -p"$DB_PASS" -e "CREATE DATABASE IF NOT EXISTS $DB_NAME DEFAULT CHARACTER SET utf8mb4;"

  # 2. 下载WordPress
  SITE_DIR="$BASE_DIR/$SITE"
  mkdir -p "$SITE_DIR"
  wp core download --path="$SITE_DIR" --locale=zh_CN --allow-root

  # 3. 生成配置文件
  ADMIN_PASS=$(openssl rand -base64 12) # 随机密码
  wp config create --path="$SITE_DIR" --dbname="$DB_NAME" --dbuser="$DB_USER" --dbpass="$DB_PASS" --allow-root

  # 4. 安装WordPress
  wp core install --path="$SITE_DIR" --url="https://$SITE" --title="${SITE%%.*}" --admin_user="admin" --admin_password="$ADMIN_PASS" --admin_email="$ADMIN_EMAIL" --allow-root

  # 5. 安装主题
  wp theme install "$THEME_SLUG" --activate --path="$SITE_DIR" --allow-root

  # 6. 安装必备插件
  wp plugin install wordpress-seo --activate --path="$SITE_DIR" --allow-root
  wp plugin install wp-super-cache --path="$SITE_DIR" --allow-root

  # 7. 基本设置
  wp option update blogdescription "" --path="$SITE_DIR" --allow-root
  wp option update timezone_string "Asia/Shanghai" --path="$SITE_DIR" --allow-root
  wp rewrite structure '/%postname%/' --path="$SITE_DIR" --allow-root

  echo "✅ $SITE 安装完成 | 密码: $ADMIN_PASS" >> install_log.txt
done

echo "全部完成!密码记录在 install_log.txt"

这个脚本干了什么

  1. 为每个站点创建独立数据库(utf8mb4编码)
  2. 自动下载最新版WordPress中文版
  3. 用 `openssl rand` 为每个站点生成随机强密码(不重复,更安全)
  4. 安装并激活指定主题(脚本里用的是Astra,你可以换成任何主题)
  5. 安装必备插件(SEO、缓存等,按需增减)
  6. 统一配置时区、固定链接等基本设置
  7. 所有管理员密码自动记录到日志文件

WP-CLI的安装(如果还没装)

curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
chmod +x wp-cli.phar
mv wp-cli.phar /usr/local/bin/wp

1 - 批量安装WordPress四种方案:宝塔脚本、WP-CLI、Docker Compose、全自动工具 - UC建站系统

进阶:多线程并行加速

如果一次要装50个以上的站,串行循环太慢。用 GNU Parallel 实现并行安装:

cat sites.txt | parallel -j 5 './install_single.sh {}'

`-j 5` 表示同时跑5个安装进程,50个站从串行的1个多小时缩短到15分钟左右。注意:并行数量不要超过服务器的CPU核心数,否则反而会变慢。

三、方案三:Docker Compose 编排,环境隔离最干净的方案

如果你的场景是:不同站点需要不同PHP版本、不同数据库配置、或者需要频繁迁移和复制站点环境,Docker方案是最合适的。

docker-compose.yml 模板

version: '3.8'

services:
  # MySQL 数据库
  db:
    image: mysql:8.0
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: rootpassword
    volumes:
      - ./db_data:/var/lib/mysql

  # WordPress 实例
  wordpress:
    image: wordpress:latest
    restart: always
    ports:
      - "8080:80"
    environment:
      WORDPRESS_DB_HOST: db
      WORDPRESS_DB_USER: root
      WORDPRESS_DB_PASSWORD: rootpassword
      WORDPRESS_DB_NAME: wordpress
    volumes:
      - ./wp_data:/var/www/html

  # phpMyAdmin(可选,方便管理数据库)
  phpmyadmin:
    image: phpmyadmin:latest
    restart: always
    ports:
      - "8081:80"
    environment:
      PMA_HOST: db

批量启动多个WordPress实例

Docker Compose的优势在于:你可以复制多份 `docker-compose.yml`,改一下端口映射和挂载目录,就能批量启动多个完全隔离的WordPress环境。每个实例有自己独立的数据库容器、独立的文件存储、独立的PHP配置。

Docker方案的优势

  • 环境完全隔离,互不影响
  • 迁移只需复制文件夹和docker-compose.yml
  • 不同站点可以用不同PHP/MySQL版本
  • 一条 `docker compose up -d` 启动所有服务
  • 配合Nginx反向代理统一管理域名

Docker方案的短板

  • 学习成本较高,需要理解容器概念
  • 资源占用比直接部署大(每个容器有基础开销)
  • 宝塔面板用户可能不习惯纯命令行管理
  • 多实例时端口管理容易混乱
  • 性能调优比裸机部署复杂

四、方案四:全自动工具,零命令行也能批量安装

如果上面三种方案你都觉得"太技术了",还有两个更友好的选择:

Quick Build WP

GitHub上的开源项目(Qinver-china/quick-build-wp),提供了一个网页表单界面。你只需要填写:服务器SSH信息 → 选择PHP/MySQL版本 → 填写网站域名和管理员信息 → 点击"开始部署"。它会自动通过SSH连接服务器,依次完成宝塔面板安装、环境搭建、WordPress部署、SSL证书申请。一个站从头到尾约2-3分钟,适合需要快速上线、不想碰命令行的场景。但批量能力较弱,主要是单站自动化而非真批量。

365建站器(商业软件)

365建站器是国内比较成熟的批量建站商业软件,自称1分钟能建500个网站。功能覆盖批量建站、AI内容生成、自动采集发布、SEO数据监控等。价格需要咨询官方(有专门的购买页面),适合有预算的站群运营团队。

⚠️ 提醒:无论用哪种批量建站方案,如果做的是站群,搜索引擎对高度相似的网站有检测能力。不同站点要用不同的主题模板、不同的内容结构、不同的插件组合,避免被判定为垃圾站群。本文只讨论技术实现,站群策略的合规性请自行评估。

2 - 批量安装WordPress四种方案:宝塔脚本、WP-CLI、Docker Compose、全自动工具 - UC建站系统

五、四种方案怎么选:看你的规模和技术水平

你的情况推荐方案理由
用宝塔面板,只需要快速创建空站点,程序另外传bt命令+Shell3行命令,学习成本最低,宝塔用户零门槛
装WordPress,要全流程自动化(数据库+程序+主题+插件+设置)WP-CLI+Shell一个脚本搞定所有步骤,可并行加速
需要环境隔离,不同站点不同PHP版本,或需要频繁迁移Docker Compose环境完全隔离,迁移最方便
不想碰任何命令行,填个表单就能装Quick Build WP网页表单操作,零命令行
做站群运营,需要建站+内容+SEO全链路365建站器 或类似商业软件建站只是第一步,后续内容更新和SEO监控更需要自动化

六、批量安装后必须检查的四件事

不管你用哪种方案批量安装,装完之后有几件事一定要做:

1. 检查Nginx配置

批量建站后执行 `nginx -t`,确认所有站点的server_name没有冲突。域名里含下划线或特殊字符时容易报错。

2. 检查SSL证书

批量创建时自动申请的SSL证书不一定全部成功。宝塔用 `bt 76` 查看证书状态,失败的用 `bt 77` 批量重签。

3 - 批量安装WordPress四种方案:宝塔脚本、WP-CLI、Docker Compose、全自动工具 - UC建站系统

3. 检查首页是否被覆盖

bt add_site 会写入默认欢迎页覆盖掉网站根目录的index文件。如果你在创建站点前已经放好了程序文件,执行后需要重新覆盖回来。

4. 修改所有默认密码

脚本里如果写了固定密码,装完后务必逐个修改。推荐在脚本中用 `openssl rand -base64 12` 为每个站生成随机密码,并记录到日志。

最后

批量安装网站程序这件事,本质上就是把重复的机械劳动用脚本替代。三种方案分别对应三种不同的技术栈偏好:用宝塔面板的选bt命令方案,用WordPress的选WP-CLI方案,追求环境隔离的选Docker方案。一个附加建议:批量建站之前,先把一个站的完整配置调好——主题怎么设、插件装哪些、固定链接什么格式、时区、描述、隐私设置。然后把这个"标准站"的配置步骤翻译成脚本命令,批量跑的时候每个站都是按照这个标准来的。先做好"模板站",再批量复制,比批量建完再逐个改设置效率高得多。
一句话总结:
· 宝塔用户批量建站 → bt命令+Shell(免费,3行命令)
· WordPress全流程自动化 → WP-CLI+Shell(免费,一脚本搞定建站+主题+插件+配置)
· 环境隔离/多版本需求 → Docker Compose(免费,环境完全隔离)
· 不想敲命令 → Quick Build WP(免费,网页表单)
· 站群全链路运营 → 365建站器等商业软件(付费)

相关推荐
在线客服
👇找客服拿折扣
QQ咨询&售后
在线时间
11:00 ~ 5:30
QQ:3155555535
👇联系QQ
👇联系WX
首页 程序 帮助 登录