用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 来永久生效

相关推荐
j_xxx404_20 分钟前
Linux:命令行参数与环境变量
linux·运维·服务器
j_xxx404_28 分钟前
Linux:进程虚拟地址空间|虚拟内存管理
linux·运维·服务器
江畔何人初39 分钟前
pod的定义以及创建过程
linux·运维·云原生
末日汐1 小时前
linux线程
linux·运维
玉梅小洋1 小时前
CentOS :yum源配置及验证指南
linux·运维·centos·yum
zxsz_com_cn1 小时前
设备预测性维护算法核心功能有哪些?六大模块拆解智能运维的“技术骨架”
运维·算法
自可乐1 小时前
n8n全面学习教程:从入门到精通的自动化工作流引擎实践指南
运维·人工智能·学习·自动化
枷锁—sha1 小时前
【SRC】越权漏洞检测
运维·服务器·网络·安全·网络安全·系统安全
UP_Continue2 小时前
Linux--进程控制
linux·运维·服务器
等什么君!2 小时前
docker -数据卷技术
运维·docker·容器