我实际上使用的是 scaleway 的对象存储。我希望能够使用 ftp 访问它并能够执行一些操作。现在我可以从中访问和查看文件/文件夹,但我无法执行操作,例如重命名文件、创建目录... 我使用 CentOS 7 作为操作系统。 这是我在主机中安装的卷:
drwxrwxr-x. 1 root root 0 Jan 1 1970 mnt
我正在使用以下命令创建容器:
docker run -d --name ftpd_server -p 21:21 -p 30000-30009:30000-30009 -e "PUBLICHOST=123.123.123.123" -v /mnt:/home/ftpusers/userA stilliard/pure-ftpd:latest
然后我在容器中输入:
docker exec -it ftpd_server /bin/bash
然后我创建用户
pure-pw useradd userA -f /etc/pure-ftpd/passwd/pureftpd.passwd -m -u ftpuser -d /home/ftpusers/userA
然后当我尝试创建目录时得到这个
我可以看到我的内容
我正在使用 stilliard/pure-ftpd
作为 docker 镜像
我还尝试授予 ftpuser root 权限并更改/etc/pure-ftpd/passwd/pureftpd.passwd 以从 1000.1000 更改为 0.0,但问题仍然存在
我在他们的github上也发现了一个和我类似的issue https://github.com/stilliard/docker-pure-ftpd/issues/35#issuecomment-325583705但我无法让它发挥作用。
最佳答案
HTTP 响应代码 550 向我表明 Scaleway 对象存储用户无权完成请求的操作。我首先要看的是 Scaleway/远程主机用户帐户权限。我的猜测是用户帐户没有所需的权限。
关于linux - 使用 docker FTP 访问存储对象时出现错误 550,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56151957/