我正在尝试让Superset在ubuntu服务器上运行。我引用了Superset页面中的步骤,如下所示:
git clone https://github.com/apache/incubator-superset/
cd incubator-superset/contrib/docker
# prefix with SUPERSET_LOAD_EXAMPLES=yes to load examples:
docker-compose run --rm superset ./docker-init.sh
# you can run this command everytime you need to start superset now:
docker-compose up
我已经修复了端口5432上有关正确版本的docker-compose和postgress地址绑定问题的初始问题。因此,在修复了这些问题后,我的docker compose run命令
docker-compose run --rm superset ./docker-init.sh
工作正常,它要求我设置用户名和密码。
最后要使容器运行,我运行了最终命令
docker-compose up.
在我的Mac上,它将运行redis,postrgre容器,然后为我提供一个localhost:8088以便我使用登录信息访问Superset UI。
但是在Ubuntu上,当我运行它时,我首先得到它:
看起来它正在运行redis和postgres容器。
但是,这给了我创建某些mkdir目录的权限被拒绝的错误。
请注意,我以root用户身份运行它。
此外,我的docker compose版本在1.23.2上还不错,而我的docker和docker-compose都安装在
下/usr/bin/docker and not /usr/local/bin/docker.
但是我认为这不应该成为问题。
任何帮助哪里出错了,我该如何解决?
谢谢
编辑:
好吧,我看了Github上提到的同一问题。并建议在docker-compose.yml文件中仅将其用于生产而不用于开发。
当我这样做时,似乎现在不会抛出相同的错误
docker-compose up.
但是,当我打开localhost:8088时,它没有连接到UI。
答案 0 :(得分:0)
尝试一下:
mkdir ../../assets
chmod -R 777 ../../superset/assets/
如docker-compose.yml#L64中所设置,开发时它以../../superset
作为卷。但是,容器在主机中没有任何权限,因此解决方案是自己创建目录并为其授予必要的权限。