运用指令行的方法办理服务器镜像及容器是运维人员最常用的方法,可是有的时分咱们不得不长途操作docker或许是面向对docker并不熟悉的技术人员供给才能(装备办理员、测试人员),这种情况下图形界面就有必要了。供给图形界面的方法来操作docker也的确是比运用指令行的方法更直接、更简略。所以很多的厂商根据docker RESTful API向用户供给了用于docker容器镜像办理的用户图形界面,Portainer、Docker UI、Shipyard等等。本文不向大家介绍这些大家伙,介绍一个 「简略的IDEA插件,经过这个插件咱们就能够在IDEA编辑器上办理docker容器及镜像」。
docker供给了长途服务的拜访才能,即:docker REST API(经过RESTful HTTP API的方法,对外供给操作指令进口)。
一、敞开docker长途拜访服务
首先要清晰的一点是,经过IDEA编辑器(长途作业主机)办理服务器上的docker镜像及容器,这属于长途服务拜访(即经过网络拜访REST API)。docker守护进程默许是不供给长途拜访的,需求修正装备文件vim /usr/lib/systemd/system/docker.service
,这是敞开docker长途拜访服务的第一步。0.0.0.0:2375
表明在当前主机上一切网卡监听2375端口。
#修正ExecStart这行
ExecStart=/usr/bin/dockerd-Hfd://-Htcp://0.0.0.0:2375-Hunix:///var/run/docker.sock--containerd=/run/containerd/containerd.sock
第二步从头加载装备文件并重启docker守护进程,并运用下方的指令检查是否能够正确供给长途拜访服务。或许经过浏览器拜访http://<docker宿主机ip>:2375/info
也能够进行验证,有呼应结果即正确,回来的是一个JSON的docker服务状况及装备信息。
#从头加载装备文件,并重启docker守护进程
systemctldaemon-reload&&systemctlrestartdocker
#检查端口是否敞开,有一行记录显现2375端口被监听,即正确
netstat-nptl|grep2375;
需求留意的是假如你的服务器上防火墙没有敞开2375端口拜访,请运用下面的指令敞开2375端口(留意:下面的指令行适用于CentOS7、8发行版,假如你是其他的linux发行版,指令或许不一样)。
firewall-cmd--zone=public--add-port=2375/tcp--permanent;#装备敞开端口
firewall-cmd--reload;#从头加载装备
二、IDEA装置Dokcer插件
下面咱们在长途作业主机的IDEA编辑器上装置插件,当然前提是你已经装置了IDEA编辑器。按照如下图所示的步骤装置docker插件,”File -> Settings ->Plugins ->查找Docker -> install装置”,插件装置完结之后一般需求重启IDEA编辑器。我的IDEA版别是2021.3,这个插件是默许集成的,不需求装置。你或许会查找出很多的docker相关的插件,记住图中的鲸鱼图标,这个才是咱们需求的。
装备Docker长途拜访服务,如下图所示,在Engine API URL处填写tcp://<长途docker服务器IP>:2375
,然后保存装备。
插件装置并保存装备,完结之后会呈现一个新的Tab窗口,用于办理上述装备服务其上的Containers(容器)、Images(镜像)、Networks(网络)、Volumes(数据卷)。包含多少个容器,容器的运行状况,容器的数据卷、端口映射等信息都能够看到。镜像的基本信息、镜像删除、导入导出操作也都支持。咱们还能够办理docker网络、办理数据卷,基本上简直覆盖了一切的docker单机服务的办理功用。 所以说**「IDEA这个插件仍是挺给力的,假如咱们自己运用docker建立一些环境,用它简直是最便利的了」。假如是办理企业级服务集群,仍是需求更高级的图形界面办理工具,如rancher之类的。在文章的最后,笔者不得不说咱们还遗漏了一个十分重要的内容,那就是「docker长途对外供给HTTP RESTful API,假如不加上任何的安全措施是十分风险的行为」** 。后续笔者会介绍如何为docker长途拜访服务增加证书,无证书的长途拜访请求会被回绝,一起运用HTTPS方法进行网络数据传输。
欢迎重视大众号:字母哥杂谈,回复003赠送本文所在专栏《docker修炼之道》的PDF成书版别。 字母哥博客:zimug.com