起因是使用 Rocky 10 来安装 BT 面板及 PHP,因为 libxml 包的版本太高问题造成 PHP 环境安装失败。
使用 Docker 便简单的多了,这里介绍下使用步骤(在此之前你需要在面板中安装 Docker):
简单的说,该方法是通过 Docker 中 BT 环境来做实际运行环境。
1、拉取 Rocky 9 镜像
2、创建容器
端口映射:9627 9627,80 80,且对外暴露。
command 填写
/bin/bash -c "/etc/rc.local && /bin/bash"
目录映射:/home/www 为 /www
3、在容器中进行系统更新、BT 面板安装、环境安装及常规配置
如,设置面板端口为 9627 等。
注意:在最终完成所有配置之前不要重启容器,这样造成配置丢失。
4、调整 BT 面板端口
编辑 /etc/rc.local 文件,用于设置启动脚本(目前情况是容器中各服务无法自启,需要手动处理下)
ln -sf /usr/bin/python3 /usr/bin/btpip # /etc/rc.local 内容 bt start /etc/init.d/nginx restart /etc/init.d/php-fpm-74 start
5、在主机中提交镜像
假设容器名为 linux。
注意:为防止一些异常情况造成容器重启而造成配置丢失,在一些操作后,建议你多次提交镜像。
docker commit linux rocky9-bt-updated:v1
6、备份镜像
在左侧“Docker” 菜单“本地镜像”中,导出刚创建的镜像。(这个镜像是无依赖的)
可以直接导入后,重新创建容器。(导入前,删除其他无用镜像)
7、删旧镜像
如果在此之前你有多次提交镜像操作,那么停止实例,删除旧镜像。并重新导入新镜像再创建实例。