谢孝恩 發表於 2018-6-28 15:23:00

通过 UI 管理 docker

<p><span style="font-family: Microsoft YaHei; font-size: 15px">Docker 正在被用在越来越多的场景中,对于不太习惯命令行工具的朋友来说,docker cli 用起来可能会比较吃力。本文笔者将介绍一个功能强大的 docker web 客户端:<span style="color: rgba(255, 0, 0, 1)"><strong>portainer</strong></span>(岸吊,参考下面插图)。按照 portainer 官方的说法,它可以让我们通过 UI 轻松的管理 docker 主机和 docker swarm 集群。说明:本文的演示环境为 ubuntu 16.04。</span></p>
<p><span style="font-family: Microsoft YaHei; font-size: 15px"><img src="https://images2018.cnblogs.com/blog/952033/201806/952033-20180628145952657-769376336.png"></span></p>
<h1><span style="font-family: Microsoft YaHei; font-size: 18pt">安装 portainer</span></h1>
<p><span style="font-family: Microsoft YaHei; font-size: 15px">就像我们通过容器来运行应用一样,运行一个容器就行了,非常简单:</span></p>
<div class="cnblogs_code">
<pre>$ docker run -d -p <span style="color: rgba(128, 0, 128, 1)">9000</span>:<span style="color: rgba(128, 0, 128, 1)">9000</span> -v /var/run/docker.sock:/var/run/docker.sock portainer/portainer</pre>
</div>
<p><span style="font-family: Microsoft YaHei; font-size: 15px">然后在浏览器中通过 9000 端口访问 protainer 站点就可以了!</span></p>
<p><strong><span style="font-family: Microsoft YaHei; font-size: 15px">配置管理员信息</span></strong><br><span style="font-family: Microsoft YaHei; font-size: 15px">第一次访问 portainer 时需要设置管理员的账号信息,我们把管理员账号命名为 admin 并设置密码:</span></p>
<p><span style="font-family: Microsoft YaHei; font-size: 15px"><img src="https://images2018.cnblogs.com/blog/952033/201806/952033-20180628150152934-868051380.png"></span></p>
<p><strong><span style="font-family: Microsoft YaHei; font-size: 15px">选择 portainer 管理的对象</span></strong><br><span style="font-family: Microsoft YaHei; font-size: 15px">简单起见我们先配置 portainer 管理本机的 docker,选择下图中的 "Local" 并点击 "connect" 按钮:</span></p>
<p><span style="font-family: Microsoft YaHei; font-size: 15px"><img src="https://images2018.cnblogs.com/blog/952033/201806/952033-20180628150248969-602479751.png"></span></p>
<h1><span style="font-family: Microsoft YaHei; font-size: 18pt">了解 portainer 的主要功能</span></h1>
<p><span style="font-family: Microsoft YaHei; font-size: 15px">简单的安装和配置之后我们就进入了 portainer 的 dashboard 界面:</span></p>
<p><span style="font-family: Microsoft YaHei; font-size: 15px"><img src="https://images2018.cnblogs.com/blog/952033/201806/952033-20180628150405118-588004249.png"></span></p>
<p><span style="font-family: Microsoft YaHei; font-size: 15px">Portainer 的界面设计非常简洁,主菜单几乎就是 docker 主要功能的一一对应。接下来,我们将通过 App Templates 菜单来创建容器一个容器,并通过该容器来介绍一些 portainer 中比较常用的功能。</span></p>
<p><span style="font-family: Microsoft YaHei; font-size: 15px">选择左侧的 App Templates 菜单,然后选择创建一个运行在 nginx 容器中的应用:</span></p>
<p><span style="font-family: Microsoft YaHei; font-size: 15px"><img src="https://images2018.cnblogs.com/blog/952033/201806/952033-20180628150541368-1836586306.png"></span></p>
<p><span style="font-family: Microsoft YaHei; font-size: 15px">在容器属性的配置界面中,指定容器的名称为 webdemo,然后在高级选项中设置把宿主机的 80 端口映射到容器中的 80 端口:</span></p>
<p><span style="font-family: Microsoft YaHei; font-size: 15px"><img src="https://images2018.cnblogs.com/blog/952033/201806/952033-20180628150636853-324745175.png"></span></p>
<p><span style="font-family: Microsoft YaHei; font-size: 15px">然后点击 "Deploy the container" 按钮开始创建容器。容器创建完成后会显示在 Containers 界面中:</span></p>
<p><span style="font-family: Microsoft YaHei; font-size: 15px"><img src="https://images2018.cnblogs.com/blog/952033/201806/952033-20180628150727687-1796239643.png"></span></p>
<p><span style="font-family: Microsoft YaHei; font-size: 15px">在这个管理界面上,我们可以选取一个或多个容器进行操作,比如 start、stop、kill、restart、pause、resume 和 remove,当然还可以通过 "Add container" 按钮添加新的容器。下面我们点击红框中的容器名称 "webdemo" 进入到容器详情界面:</span></p>
<p><span style="font-family: Microsoft YaHei; font-size: 15px"><img src="https://images2018.cnblogs.com/blog/952033/201806/952033-20180628150821795-581954266.png"></span></p>
<p><span style="font-family: Microsoft YaHei; font-size: 15px">这个界面中显示了单个容器的详情以及可以对这个容器执行的操作。最上方是针对容器的操作,接下来是容器的状态,然后是 "Access control"、"Create image"、"Container details"、"Volumes" 和 "Connected networks",为了显示方便,笔者把下面的类别都折叠了。</span><br><span style="font-family: Microsoft YaHei; font-size: 15px">在容器状态区域,需要关注下红框中的 Status、Logs、Console 和 Inspect,这些都是我们平时比较关心的内容。下面点击它们分别查看对应的视图。</span><br><span style="font-family: Microsoft YaHei; font-size: 15px"><strong>Container statistics 视图</strong>实时的显示容器占用的资源信息,需要注意的是相关的数据没有被持久化,显示的内容总是每次打开这个视图后的数据:</span></p>
<p><span style="font-family: Microsoft YaHei; font-size: 15px"><img src="https://images2018.cnblogs.com/blog/952033/201806/952033-20180628150913169-1272978470.png"></span></p>
<p><span style="font-family: Microsoft YaHei; font-size: 15px"><strong>容器日志视图</strong>显示容器中的日志输出:</span></p>
<p><span style="font-family: Microsoft YaHei; font-size: 15px"><img src="https://images2018.cnblogs.com/blog/952033/201806/952033-20180628151001314-467896299.png"></span></p>
<p><span style="font-family: Microsoft YaHei; font-size: 15px">通过<strong>控制台视图</strong>我们可以在容器中执行命令:</span></p>
<p><span style="font-family: Microsoft YaHei; font-size: 15px"><img src="https://images2018.cnblogs.com/blog/952033/201806/952033-20180628151046039-1202685000.png"></span></p>
<p><span style="font-family: Microsoft YaHei; font-size: 15px"><strong>Inspect 视图</strong>则为我们展示容器的详细信息:</span></p>
<p><span style="font-family: Microsoft YaHei; font-size: 15px"><img src="https://images2018.cnblogs.com/blog/952033/201806/952033-20180628151132310-699701468.png"></span></p>
<h1><span style="font-family: Microsoft YaHei; font-size: 18pt">管理手动创建的容器</span></h1>
<p><span style="font-family: Microsoft YaHei; font-size: 15px">Portainer 并不是只能管理自己创建的容器,我们通过命令行创建的容器也会被 portainer 发现并管理。比如我们到宿主机的控制台上创建一个名为 mycon 的容器:</span></p>
<div class="cnblogs_code">
<pre>$ docker run --<span style="color: rgba(0, 0, 255, 1)">rm</span> -<span style="color: rgba(0, 0, 255, 1)">id</span> --name mycon ubuntu</pre>
</div>
<p><span style="font-family: Microsoft YaHei; font-size: 15px">然后在 portainer 的容器列表界面中刷新一下:</span></p>
<p><span style="font-family: Microsoft YaHei; font-size: 15px"><img src="https://images2018.cnblogs.com/blog/952033/201806/952033-20180628151227585-1835891666.png"></span></p>
<p><span style="font-family: Microsoft YaHei; font-size: 15px">mycon 容器已经出现在容器列表中了。</span></p>
<h1><span style="font-family: Microsoft YaHei; font-size: 18pt">其它操作</span></h1>
<p><span style="font-family: Microsoft YaHei; font-size: 15px">通过菜单中的 Images、Networks 和 Volumes 项可以分别管理容器镜像、network 和数据卷:</span></p>
<p><span style="font-family: Microsoft YaHei; font-size: 15px"><img src="https://images2018.cnblogs.com/blog/952033/201806/952033-20180628151351223-1281368095.png"></span></p>
<p><span style="font-family: Microsoft YaHei; font-size: 15px">这些差别多就是平时使用比较频繁的功能了!</span></p>
<p><span style="font-family: Microsoft YaHei; font-size: 15px">除了管理单机模式的 docker,portainer 还可以管理 docker swarm 集群。具体的用法并不复杂,这里就不再赘述了,有兴趣的朋友可以参考这里。</span></p>
<p><span style="font-family: Microsoft YaHei; font-size: 15px">参考:</span><br><span style="font-family: Microsoft YaHei; font-size: 15px">Portainer github</span><br><span style="font-family: Microsoft YaHei; font-size: 15px">Portainer dockerhub</span><br><span style="font-family: Microsoft YaHei; font-size: 15px">How to Manage Docker Containers using Portainer on Ubuntu</span><br><span style="font-family: Microsoft YaHei; font-size: 15px">Portainer, a UI for Docker</span></p>

</div>
<div id="MySignature" role="contentinfo">
    <div>作者:sparkdev</div>
<div>出处:http://www.cnblogs.com/sparkdev/</div>
<div>本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。</div><br><br>
来源:https://www.cnblogs.com/sparkdev/p/9238796.html
頁: [1]
查看完整版本: 通过 UI 管理 docker