宝塔用户迁移1Panel全攻略:数据备份与配置迁移一步到位

迁移服务器面板总会让人提心吊胆,但告别宝塔拥抱1Panel的Docker化轻量化未来已是趋势。本指南将带你​​零数据丢失、配置平滑转移​​完成迁移。


:magnifying_glass_tilted_left: 为什么迁移?1Panel核心优势

  1. ​Docker容器化部署​​:所有应用独立容器运行,避免环境冲突(如PHP版本切换)
  2. ​开源免费无商业化限制​​:无插件付费墙,全功能开放
  3. ​响应更快资源占用低​​:实测内存占用仅为宝塔1/3
  4. ​配置即代码​​:所有服务配置通过docker-compose.yml管理,版本可控

:package: 迁移前准备:完整备份策略

  1. ​网站文件备份​
# 宝塔面板打包网站目录
tar -czvf /backup/site_backup.tar.gz /www/wwwroot
  1. ​数据库全量导出​
# MySQL备份(容器内执行)
docker exec -it bt-mysql mysqldump -uroot -p --all-databases > /backup/mysql_all.sql
  1. ​Nginx配置归档​
cp -r /www/server/nginx/conf /backup/nginx_conf_backup
  1. ​关键服务清单记录​
  • 运行的PHP版本
  • 使用的MySQL/MariaDB版本
  • SSL证书路径
  • 定时任务配置(crontab -l)

:rocket: 1Panel初始化配置

  1. ​安装1Panel(推荐最新版)​
curl -sSL https://resource.fit2cloud.com/1panel/package/quick_start.sh -o quick_start.sh 
sudo bash quick_start.sh
  1. ​环境预设调整​
  • 1Panel 设置 > 服务端口 中修改默认端口(不与原宝塔冲突)
  • 存储路径设置为新数据盘(如 /data)

:counterclockwise_arrows_button: 分步骤迁移实践

:one: 网站文件迁移

# 在新服务器恢复网站文件
tar -xzvf site_backup.tar.gz -C /opt/1panel/volumes/sites

:two: 数据库恢复

在1Panel创建同名数据库:

1panel mysql create_db --name=my_db --user=my_user

导入数据:

docker exec -i 1panel-mysql mysql -uroot -p my_db < /backup/mysql_all.sql

:three: 服务配置迁移

​Nginx站点配置转换:​
将宝塔的.conf文件复制到:

/opt/1panel/volumes/nginx/sites/my_site.conf

注意调整路径映射:

location / {
    root /sites/my_site/public; # 1Panel默认路径结构
}

​PHP版本指定:​
在1Panel创建PHP站点时选择对应版本,或使用已有容器


:white_check_mark: 迁移后验证清单

  1. ​网站连通性测试​
curl -I https://yourdomain.com
  1. ​数据库连接检查​
    使用Adminer验证数据完整性
  2. ​SSL证书重新部署​
    在1Panel的站点-配置-SSL一键申请新证书
  3. ​计划任务迁移​
    将宝塔的cron任务转换为1Panel的定时任务(支持秒级)
  4. ​防火墙规则同步​
    安全-Firewall开放原端口(如8888→8080)

:warning: 关键避坑指南

  1. ​路径陷阱​​:1Panel网站默认路径在 /opt/1panel/volumes/sites/
  2. ​端口冲突​​:先停止宝塔服务再启动1Panel
bt stop && 1panel start
  1. ​文件权限处理​​:容器内外UID需一致
docker exec -it 1panel-nginx chown -R www-data:www-data /sites
  1. ​旧服务清理​​:迁移完成后卸载宝塔
wget http://download.bt.cn/install/bt-uninstall.sh && sh bt-uninstall.sh

:hammer_and_wrench: 高阶技巧:批量迁移方案

当需要迁移大量站点时:

# 导出宝塔所有站点配置
ls /www/wwwroot > site_list.txt
# 配合1Panel API自动创建站点
while read site; do
    curl -X POST "https://1panel_ip:port/api/site/create" \
    -d '{"name":"'$site'","path":"/sites/'$site'/public"}' 
done < site_list.txt

:glowing_star: 迁移成果

完成迁移后,你获得了:

  • :high_voltage: 资源利用率提升30%+的轻量化环境
  • :locked: 容器隔离的安全增强机制
  • :package: 版本化管理的服务配置
  • :counterclockwise_arrows_button: CI/CD友好架构(支持GitOps)

​迁移不只是工具切换,更是架构升级。​​ 曾有用户报告迁移后服务器负载从5.0降至1.2,PHP响应时间缩短60%。拥抱现代化运维,1Panel的旅程现在开始。