复制后 Docker 卷权限被破坏

复制后 Docker 卷权限被破坏

我使用 Docker 和 Docker Compose 来管理容器。出于备份原因,我之前已将所有 Docker 文件(卷等)在其上运行,/home/docker并通过 进行符号链接/var/lib/docker -> /home/docker

过了一会儿,我决定/home/docker使用

$ cp -r /home/docker /my/new/ssd/docker 
$ rm /var/lib/docker 
$ ln -s /my/new/ssd/docker /var/lib/docker 
$ rm -r /home/docker

我担心这会改变所有权限,因为由于权限问题,我无法再运行大多数容器。

示例:Azuracast 抛出以下错误:

{"level":"error","time":"2022-07-22T23:30:02.243","sender":"service","message":"error initializing data provider: open /var/azuracast/sftpgo/sftpgo.db: permission denied"}

/var/azuracast存储在docker卷上的位置。

我现在想恢复所有这些权限。

有没有办法恢复所有现有卷的 Docker 权限或告诉 Docker 处理这个问题?

我目前尝试过的方法是:我以递归方式将所有权限更改为root:root使用chown -R root:root /my/new/ssd/docker

这个问题给我的服务器环境造成了严重的问题,我知道使用cp -r而不是rsync -aAX一个巨大的错误,所以我非常感谢任何帮助。

提前致谢。

相关内容