【问题标题】:Superset 'npm eacces permission denied mkdir'超集'npm eacces 权限被拒绝 mkdir'
【发布时间】:2019-05-22 00:36:00
【问题描述】:

按照Superset文档中提供的步骤,按照Docker方式初始化开发环境,出现如下错误。

已经尝试使用 Node Version Manager 安装 npm,但错误仍然存​​在。

superset_1 | npm ERR! path /home/superset/superset/assets/node_modules superset_1 | npm ERR! code EACCES superset_1 | npm ERR! errno -13 superset_1 | npm ERR! syscall mkdir superset_1 | npm ERR! Error: EACCES: permission denied, mkdir '/home/superset/superset/assets/node_modules' superset_1 | npm ERR! { [Error: EACCES: permission denied, mkdir '/home/superset/superset/assets/node_modules'] superset_1 | npm ERR! cause: superset_1 | npm ERR! { Error: EACCES: permission denied, mkdir '/home/superset/superset/assets/node_modules' superset_1 | npm ERR! type: 'OperationalError', superset_1 | npm ERR! '$error': '$error', superset_1 | npm ERR! cause: superset_1 | npm ERR! { errno: -13, superset_1 | npm ERR! code: 'EACCES', superset_1 | npm ERR! syscall: 'mkdir', superset_1 | npm ERR! path: '/home/superset/superset/assets/node_modules' }, superset_1 | npm ERR! isOperational: true, superset_1 | npm ERR! errno: -13, superset_1 | npm ERR! code: 'EACCES', superset_1 | npm ERR! syscall: 'mkdir', superset_1 | npm ERR! path: '/home/superset/superset/assets/node_modules' }, superset_1 | npm ERR! isOperational: true, superset_1 | npm ERR! stack: superset_1 | npm ERR! 'Error: EACCES: permission denied, mkdir \'/home/superset/superset/assets/node_modules\'', superset_1 | npm ERR! type: 'OperationalError', superset_1 | npm ERR! '$error': '$error', superset_1 | npm ERR! errno: -13, superset_1 | npm ERR! code: 'EACCES', superset_1 | npm ERR! syscall: 'mkdir', superset_1 | npm ERR! path: '/home/superset/superset/assets/node_modules' } superset_1 | npm ERR! superset_1 | npm ERR! The operation was rejected by your operating system. superset_1 | npm ERR! It is likely you do not have the permissions to access this file as the current user superset_1 | npm ERR! superset_1 | npm ERR! If you believe this might be a permissions issue, please double-check the superset_1 | npm ERR! permissions of the file and its containing directories, or try running superset_1 | npm ERR! the command again as root/Administrator (though this is not recommended). superset_1 | superset_1 | npm ERR! A complete log of this run can be found in: superset_1 | npm ERR! /home/superset/.npm/_logs/2019-01-05T05_09_30_276Z-debug.log superset_superset_1 exited with code 243

【问题讨论】:

  • 试试sudo
  • @westdabestdb 尝试过同样的操作,也尝试过作为“root”用户,但没有运气

标签: node.js npm superset apache-superset


【解决方案1】:

有同样的问题。我通过删除命令修复它

USER superset    

来自 Dockerfile(第 37 行)。

然后我在 docker-entrypoint.sh 文件中添加了

su - superset

所以没有功能丢失,但我不确定这是否是必要的。 我的 docker-entrypoint.sh 文件如下所示:

celery worker --app=superset.sql_lab:celery_app --pool=gevent -Ofair &
# needed by superset runserver
(cd superset/assets/ && npm ci && npm run sync-backend)
(cd superset/assets/ && npm run dev) &
su - superset &
FLASK_APP=superset:app flask run -p 8088 --with-threads --reload --debugger -- 
host=0.0.0.0

【讨论】:

    猜你喜欢
    • 2019-10-28
    • 2021-10-22
    • 2018-03-01
    • 2014-01-24
    • 1970-01-01
    • 2018-03-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多