用docker命令行操作远程的Dockerd daemon服务

本地安装 Dockerd 服务太耗本机磁盘空间了,共用已有的Dockerd服务能够节省一部分空间

修改 Dockerd 服务启动文件,增加TCP监听方式

Dockerd 服务默认监听方式为 Unix Domain Socket ,只允许本机连接,想要能够远程连接,需要增设 TCP 监听方式,修改 docker.service 文件 /lib/systemd/system/docker.service(不同环境路径可能不同,具体可以用命令 systemctl status docker.service 查看),在启动命令参数中增加TCP监听 -H tcp://0.0.0.0:2375

shell 复制代码
[Service]
Type=notify
# the default is not to use systemd for cgroups because the delegate issues still
# exists and systemd currently does not support the cgroup feature set required
# for containers run by docker
ExecStart=/usr/bin/dockerd -H fd:// -H tcp://0.0.0.0:2375 --containerd=/run/containerd/containerd.sock
ExecReload=/bin/kill -s HUP $MAINPID
TimeoutStartSec=0
RestartSec=2
Restart=always

然后 reload 并重启 Dockerd 服务:

bash 复制代码
systemctl daemon-reload
systemctl restart docker.service

验证 Dockerd 监听:


远程操作 Dockerd 服务

docker 命令默认会连接本地 Dockerd daemon 服务,要连接远程的 Dockerd 需要指定参数 -H--host

每次执行命令都要加参数无疑比较麻烦,docker 命令行还支持用环境变量 DOCKER_HOST 来指定要连接的Dockerd:

把环境变量加入到 ~/.bashrc 或者 /etc/profile 来永久生效

相关推荐
工具罗某人2 分钟前
docker快速部署kafka
java·nginx·docker
萤丰信息10 分钟前
开启园区“生命体”时代——智慧园区系统,定义未来的办公与生活
java·大数据·运维·数据库·人工智能·生活·智慧园区
Nobody__123 分钟前
解决多台服务器 UID/GID 做对齐后,文件系统元数据未更新的情况
运维·服务器
珂玥c1 小时前
windows系统nfs挂载
运维·windows·ssh·remmina·cygwin
菜择贰1 小时前
在linux(wayland)中禁用键盘
linux·运维·chrome
0__O1 小时前
Docker 浅谈
docker
霸气十足+拼命+追梦少年1 小时前
服务器挂载U盘或硬盘
运维·服务器
wok1571 小时前
Windows 上使用 Docker Desktop 教程
windows·docker·容器
慕容雪_2 小时前
运维笔记-笔记本无线网卡连接wifi,有线网卡连接内网
运维·内网·远程
小杰帅气2 小时前
进程优先级与切换调度
linux·运维·服务器