配置docker以放置文件
配置docker以放置文件
这个问题已经在这里有了答案:
我刚开始使用 docker,然后运行了这个命令:
docker pull redis
结果我得到了一个权限被拒绝的错误。原来,docker会写入到/var/*
目录,这需要写入权限。同样,许多其他的docker命令也需要类似的权限:
sudo docker ***
现在,我并不想在每个docker命令中添加root权限。(这可能是因为我还不熟悉docker,但这对于任何程序都是真实的。) 这是docker的要求吗?
如果不是必须的,那么我该如何配置呢?就像其他程序一样,只有当它们需要权限时才会要求我,所有拉动和运行命令都将写入到我的普通目录或从它们运行,而不是从系统目录运行。
编辑:我的担忧是,如果docker允许访问系统文件,这意味着它有一些潜在的对计算机有害的嵌入式脚本,并且当我运行docker时它会执行。既然我给它了root权限,那么脚本可以做任何事情。将它添加到用户组而不是sudo能解决这个问题吗?
admin 更改状态以发布 2023年5月21日
你很可能作为用户不是docker组的一部分。你可以尝试在这里提到的后安装步骤。
创建docker组:
sudo groupadd docker
将用户添加到组中:
sudo usermod -aG docker $USER
重新加载更改:
newgrp docker
默认情况下,Docker在您的系统上运行一个始终处于开启状态的守护程序,需要root权限(尽管存在实验性的非root Docker支持)。
常见的做法是将您的用户添加到docker
组中,这样您就可以在不必使用sudo
的情况下运行docker
:https://docs.docker.com/engine/install/linux-postinstall/
sudo usermod -aG docker $USER newgrp docker
如果您对非root Docker感兴趣,以下内容可能会引起您的注意: