如何在Zeppelin的shiro.ini中添加用户?Docker容器权限及编辑方式咨询
Zeppelin容器中编辑shiro.ini的解决方案
1. 以root权限进入容器终端编辑
直接用docker exec命令指定root用户进入容器:
docker exec -it --user root <你的Zeppelin容器名/ID> /bin/bash
进入后就能用nano或vi编辑shiro.ini,文件默认路径是/zeppelin/conf/shiro.ini。编辑完成后保存退出,重启容器生效:
docker restart <你的Zeppelin容器名/ID>
2. 宿主机挂载文件编辑(持久化推荐)
容器内的修改在重启后可能丢失,更稳妥的方式是把shiro.ini挂载到宿主机:
- 先把容器内的shiro.ini复制到宿主机:
docker cp <你的Zeppelin容器名/ID>:/zeppelin/conf/shiro.ini ./shiro.ini
- 在宿主机上用本地编辑器(比如vscode、nano)修改这个文件,添加用户配置。
- 重启Zeppelin容器时,加上挂载参数(替换原有run命令里的对应部分):
docker run -v $(pwd)/shiro.ini:/zeppelin/conf/shiro.ini [你的其他容器启动参数] apache/zeppelin:<版本号>
之后直接修改宿主机的shiro.ini,重启容器就能生效,不用再进容器操作。
3. 笔记本内编辑的可行性说明
Zeppelin笔记本默认没有直接编辑容器系统文件的权限,官方镜像也没预装sudo。如果非要在笔记本里尝试,得先在容器root终端安装sudo,再给zeppelin用户授权sudo权限,之后在笔记本的Shell段落运行sudo nano /zeppelin/conf/shiro.ini——但这种方式不安全,不推荐生产环境使用。
内容的提问来源于stack exchange,提问作者NewOne
相关产品推荐
相关产品推荐

