这种情况通常是因为Docker Daemon的权限问题。当你不使用sudo时,你正在以当前用户身份尝试运行Docker容器,而Docker Daemon可能没有配置为允许非root用户访问。使用sudo时,你以root用户身份运行Docker命令,这就绕过了权限问题。
确保你的用户被加入到docker组。你可以通过以下命令将当前用户添加到docker组:
sudo usermod -aG docker $USER
之后,你可能需要注销并重新登录,或者重新启动系统,以确保用户组的变更生效。