You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在macOS使用Podman搭建Selenoid遇套接字权限问题求助

解决macOS下Podman替代Docker搭建Selenoid的套接字权限问题

问题复现

连接套接字时触发权限错误:

Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Post "http://%2Fvar%2Frun%2Fdocker.sock/v1.12/containers/create": dial unix /var/run/docker.sock: connect: permission denied

Podman版本信息:

Client:       Podman Engine
Version:      4.2.0
API Version:  4.2.0
Go Version:   go1.18.5
OS/Arch:      darwin/amd64

Server:       Podman Engine
Version:      4.2.0
API Version:  4.2.0
Go Version:   go1.18.4
OS/Arch:      linux/amd64 

Podman机器已完成API转发至/var/run/docker.sock,可正常通过Podman命令启动容器,但创建Selenoid driver时出现权限问题。

解决建议

1. 检查并调整套接字文件权限

先查看/var/run/docker.sock的权限详情:

ls -l /var/run/docker.sock

若输出显示文件归属为root:wheel且当前用户无读写权限,可临时调整权限(重启Podman机器后会重置):

sudo chmod 666 /var/run/docker.sock

如需持久化解决,将当前用户加入wheel组:

sudo dscl . append /Groups/wheel GroupMembership $(whoami)

执行后重启终端或重新登录系统生效。

2. 确认Podman默认连接配置

检查当前默认连接是否为root权限的连接:

podman system connection list

若默认连接不是podman-machine-default-root,切换为该连接:

podman system connection default podman-machine-default-root

随后重启Podman机器:

podman machine stop && podman machine start

3. 手动指定DOCKER_HOST环境变量

部分工具可能无法自动识别Podman的API转发地址,手动设置环境变量:

export DOCKER_HOST=unix:///var/run/docker.sock

启动Selenoid时也可直接指定参数:

selenoid --docker-host unix:///var/run/docker.sock

4. 重新初始化Podman机器

若上述方法无效,尝试重置Podman机器:

podman machine stop
podman machine rm podman-machine-default
podman machine init
podman machine start

重启后再次检查套接字权限及连接配置。

5. 检查Selenoid配置文件

确认Selenoid的browsers.json或启动参数中,是否指定了正确的Docker主机地址。若配置了自定义--docker-host,确保指向/var/run/docker.sock。

内容的提问来源于stack exchange,提问作者LeonLee

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 11:50:30