概述
在SmartBI的部署中,导出引擎需要使用docker,而docker只能用root部署,所以导出引擎的部署需要用到root。但在实际的使用过程中,往往只能用普通用户去运维应用程序,所以需要将导出引擎切换为普通用户运维。本文将从导出引擎的部署开始,以linux系统X86架构为例,说明导出引擎如何从root切换为普通用户运维。实际操作时,需要将“普通用户”替换为实际的用户。
一、使用普通用户上传导出引擎安装包
用普通用户上传导出引擎安装包smartbi-export-x86_64.tar.gz到服务器的部署路径上,后续以/data/smartbi目录为例。这一步主要是避免因为文件权限导致无法用普通用户启动导出引擎。
二、使用普通用户解压导出引擎安装包
cd /data/smartbi
tar -zxvf smartbi-export-x86_64.tar.gz
三、使用root部署导出引擎
根据实际环境的步骤切换为root用户,然后参考以下步骤部署导出引擎
# 部署docker,如果服务器已经部署了docker,请联系SmartbiBI技术人员,确认该docker版本是否支持导出引擎部署
cd /data/smartbi/smartbi-export-x86_64
chmod +x *.sh
./install_docker.sh
# 启动导出引擎
cd /data/smartbi/smartbi-export-x86_64
./start_SmartbiExport.sh
四、使用root切换导出引擎为普通用户运维
将普通用户加入docker组
# 把普通用户添加到docker组中
usermod -aG docker 普通用户
# 查看普通用户的用户组(查询出有docker组即可)
id 普通用户
# 刷新docker用户组
newgrp docker
# 授权
chmod 755 /usr/bin/docker
停止SmartbiExport,删除原容器
cd /data/smartbi/smartbi-export-x86_64
./stop_SmartbiExport.sh
docker ps -a
docker rm 容器id
五、使用普通用户启动导出引擎
修改脚本文件,将sudo有关字样去掉,可以用vi命令编辑脚本后,输入“/”,搜索sudo字样定位
# 进入导出引擎安装目录
cd /data/smartbi/smartbi-export-x86_64
# 修改start_SmartbiExport.sh脚本,将sudo有关字眼去掉
vi start_SmartbiExport.sh
# 修改stop_SmartbiExport.sh脚本,将sudo有关字眼去掉
vi stop_SmartbiExport.sh

重新启动SmartbiExport成功即可。如果直接在当前shell窗口切换普通用户启动后,提示权限不够,就关闭重新打开shell窗口,这种一般是有缓存。
cd /data/smartbi/smartbi-export-x86_64
./start_SmartbiExport.sh
后续导出引擎的启动、停止、更新都可以用普通用户操作,但docker的卸载还是需要使用root用户。
最后,还是老样子,答题巩固下顺便领取麦豆——>点击领取任务 |