Linux虚拟机中Redash Docker Compose构建依赖错误求助
Redash Docker构建依赖错误解决方案
1. 匹配官方指定的Node.js版本
官方Dockerfile中使用的是Node.js 14.x版本,更换为18.1.x会引发前端依赖包(如webpack、babel相关组件)的兼容性冲突。修改Dockerfile中的Node镜像行:
# 替换原有node镜像声明 FROM node:14-bullseye AS frontend-builder
2. 清理构建缓存后重新构建
之前的构建缓存可能残留不兼容的依赖文件,执行以下命令彻底清理并重新构建:
# 清理Docker构建缓存 docker builder prune -af # 无缓存重新构建镜像 docker-compose build --no-cache
3. 手动修复依赖版本(若上述步骤无效)
如果仍报错,可进入前端构建容器手动安装兼容版本依赖:
# 启动Node14容器并进入交互模式 docker run -it --rm node:14-bullseye /bin/bash # 克隆Redash仓库(本地已有可跳过) git clone https://github.com/getredash/redash.git cd redash/frontend # 删除旧的依赖锁文件 rm -f package-lock.json yarn.lock # 重新安装兼容依赖 npm install
将本地生成的新依赖锁文件替换到项目目录后,再执行构建命令。
4. 直接使用官方预构建镜像
若手动构建问题持续,可跳过构建步骤,直接使用官方预构建镜像:
# 修改docker-compose.yml中的image配置 services: server: image: redash/redash:10.1.0.b50633 scheduler: image: redash/redash:10.1.0.b50633 worker: image: redash/redash:10.1.0.b50633
执行docker-compose up -d即可启动服务。
内容的提问来源于stack exchange,提问作者Mufil Rahman A
相关产品推荐
相关产品推荐

