Docker 装完之后:免 sudo、配代理,以及每天都在敲的那些命令
apt install docker-ce 跑完并不等于能用了。每次装完新机器我都要重复同样三件事:把当前用户加进 docker 组、给守护进程配代理、然后把服务用 compose 起起来。这篇把这三件事和之后天天要敲的命令一起记下来,下次直接抄。 一、免 sudo 敲 docker 刚装完执行 docker ps 会报 permission denied ... /var/run/docker.sock。因为这个 socket 属于 docker 组,而你的用户不在组里。 # 1. 创建 docker 组(安装时通常已自动创建,执行一下无妨) sudo groupadd docker # 2. 将当前用户加入 docker 组 sudo usermod -aG docker $USER # 3. 激活组更改(或者直接退出并重新登录 SSH) newgrp docker newgrp 只对当前这个 shell 生效,新开的窗口仍然是旧的组信息。想彻底干净,还是退出重连 SSH 最省事。 验证: docker run --rm hello-world ⚠️ 需要知道的一件事:docker 组等价于 root 权限。进了这个组的用户,可以挂载宿主机根目录起一个容器,等于拿到全盘读写。个人服务器无所谓,多人共用的机器就要想清楚再加。 二、给守护进程配代理 在境内拉 docker.io 的镜像经常超时。注意这里要配的是 dockerd 这个守护进程的代理,不是你 shell 里的 http_proxy——因为真正去拉镜像的是后台的 dockerd,它读不到你终端里的环境变量。 ...