Apache Ranger Docker部署报错求助:无法创建Maven本地仓库
问题解决步骤
1. 清理残留容器与缓存
先清理孤儿容器和无效构建缓存,消除环境干扰:
docker-compose down --remove-orphans docker system prune -af
2. 修复Maven仓库权限问题
错误核心是容器内/home/ranger/.m2/repository目录无法创建,可通过以下两种方式解决:
- 执行启动命令前,指定本地Maven缓存映射,避免容器内权限问题:
export MAVEN_OPTS="-Dmaven.repo.local=${HOME}/.m2/repository" export ENABLED_RANGER_SERVICES="tagsync,hadoop,hbase,kafka,hive,knox,kms" ./ranger_in_docker up
- 或修改项目中
Dockerfile.ranger,添加权限配置:
RUN mkdir -p /home/ranger/.m2/repository && chown -R ranger:ranger /home/ranger
3. 修正Java版本配置
构建中断在Java版本切换步骤,需确认容器内Java环境:
- 进入基础镜像检查已安装的Java版本:
docker run -it --rm docker.io/library/ranger-base:latest bash update-java-alternatives --list
将Dockerfile.ranger中的update-java-alternatives命令改为容器内实际存在的Java 8路径,或更换包含OpenJDK 8的基础镜像。
4. 分步构建定位问题
拆分构建流程,单独构建镜像再启动服务,便于定位故障环节:
./ranger_in_docker build ranger-base ./ranger_in_docker build ranger-build ./ranger_in_docker up
内容的提问来源于stack exchange,提问作者Amit
相关产品推荐
相关产品推荐

