Arch Manjaro下Docker非root运行失败,无法连接守护进程求助
解决Arch/Manjaro上Docker无法连接daemon及文件编辑问题
一、修复docker ps连接报错
检查并启动Docker服务
先确认Docker守护进程是否在运行:systemctl status docker如果显示未运行,启动服务并设置开机自启:
sudo systemctl start docker sudo systemctl enable docker修正Docker Socket路径
报错指向Desktop的socket路径,说明环境变量DOCKER_HOST被错误设置,先检查变量值:echo $DOCKER_HOST若输出为
unix:///home/arch/.docker/desktop/docker.sock,临时取消该变量:unset DOCKER_HOST要永久生效,编辑你的shell配置文件(如
~/.bashrc或~/.zshrc),删除其中设置DOCKER_HOST的行,再执行:source ~/.bashrc # 对应bash环境 # 或 source ~/.zshrc # 对应zsh环境刷新用户组权限
尽管id命令显示用户已加入docker组,仍需刷新权限使设置生效,临时切换组的快速方式:newgrp docker之后再执行
docker ps测试连接。
二、编辑Docker相关文件的方法
编辑容器内的文件
确保目标容器处于运行状态(未运行则先启动:docker start <容器ID/名称>),进入容器终端:docker exec -it <容器ID/名称> /bin/bash容器内若无编辑器,根据系统安装(如Debian/Ubuntu用
apt update && apt install vim,Arch系用pacman -S vim),之后直接用编辑器修改文件即可。编辑Docker系统配置文件
比如修改Docker守护进程配置文件daemon.json,用sudo权限打开:sudo nano /etc/docker/daemon.json修改完成后保存退出,重启Docker服务使配置生效:
sudo systemctl restart docker
内容的提问来源于stack exchange,提问作者itachi uchiha
相关产品推荐
相关产品推荐

