docker妙用 篇五:管理docker必备容器——Portainer基础教程
2023-05-14 18:21:21
写在前面
Portainer似乎已经被站内大佬写烂了,但是为了不影响整个专栏的文章逻辑结构。依然给大家规划了一篇Portainer的文章。不敢说全网最全,但基本用法和进阶功能在这篇文章中都有规划,相信你在阅读完这篇文章后可以收获满满。
Portainer属于用了就回不去的那种,之后本专栏的大部分docker容器部署教程也将会基于Portainer进行部署。
Portainer
介绍
Portainer是一款开源的容器管理工具,旨在简化Docker容器和Kubernetes集群的管理。通过提供一个直观的Web界面,Portainer可以帮助用户轻松地创建、管理和维护容器,而无需使用复杂的命令行工具。
功能
容器管理工具:Portainer支持Docker和Kubernetes,提供了一个统一的管理平台,帮助用户轻松管理和监控容器。
支持Docker和Kubernetes:Portainer与Docker和Kubernetes完美集成,为用户提供了一个简单易用的界面来管理容器和集群。
简化操作:Portainer通过Web界面简化了容器管理,用户无需熟练掌握Docker和Kubernetes命令即可完成各种操作。
为什么它是每台NAS上的必备
非常简单的一件事情,Portainer可以部署在任何支持docker功能的设备上,不论你的操作系统是openwrt还是群晖,Portainer都可以帮助你无缝适应各个操作系统部署docker容器。它不仅拥有强大的图形化部署docker容器能力,而且更重要的一点,当你更换了NAS操作系统,并不需要熟悉新的NAS系统的部署docker的方式,只需要一键部署Portainer,然后在Portainer上部署docker容器即可,节省掉额外的学习成本。
部署
版本区别
Portainer目前分为两个大的版本,分别为Portainer CE和Portainer BE(portainer-ee)。
Portainer CE (Community Edition) 和 Portainer BE (Business Edition) 有以下主要区别:
Portainer CE:
Portainer CE 是开源版本,广泛受到全球家庭实验室用户的喜爱,可以免费安装。
它是一个轻量级的服务交付平台,适用于容器化应用程序,可用于管理 Docker,Swarm,Kubernetes 和 ACI 环境。设计上,旨在简单部署和使用。该应用程序允许你通过一个“智能”图形用户界面和/或一个广泛的 API 来管理所有的编排器资源(如容器、镜像、卷、网络等)。
Portainer CE 为个人提供了一个通用的管理工具集,可以轻松地部署和管理容器本地应用程序,运营成本低,而且无需专门投资任何单一的编排器或 Kubernetes 分发版本。
Portainer BE:
Portainer BE 建立在开源基础之上,并包括一系列高级功能和功能,如角色基础访问控制(RBAC)和支持,这些都是商业用户的特定需求。
Portainer BE 提供的特性包括身份和访问管理,外部认证系统,基于角色的访问控制,Kubernetes-as-a-Service (KaaS) 和 MicroK8s 的设置和配置,配额管理,安全治理(如单点登录,认证和活动日志),丰富的可观察性,成本管理,以及灾难恢复等。
购买 Portainer Business 许可证时,会包含支持服务,有明确的服务级别协议;提供 9x5 的次日支持或针对关键环境的 24x7 支持。五个节点的免费许可证只通过社区论坛提供支持。
总的来说,Portainer CE 是一个功能齐全的开源容器管理工具,适合个人和小团队使用。而 Portainer BE 则提供了更高级的功能,适合需要更细粒度控制和支持的商业用户。
因此正常来说,我们一般选择拉取portainer-ce的镜像即可。
注:由于portainer镜像为早期版本,如果不是设备过于老旧,请不要拉取这个镜像。
ssh部署命令
1.(可选)新建数据卷:Portainer_data
docker volume create Portainer_data
2.(可选)在主机目录下新建文件夹:Portainer_data(与第一步选择其一即可)。
3.拉取Portainer镜像:
docker pull portainer/portainer-ce
4.部署命令:
docker run -d -p 9000:9000 —name portainer —restart always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce
如果不清楚这里面的命令具体含义是什么,建议看一下我的专栏的前几篇文章。
图形化部署容器方法
可以直接在图形化界面挂载/var/run/docker.sock,目前应该也就UNRAID一家系统可以做,以下是部署教程:
在应用窗口搜索Portainer,选择安装Portainer-CE:
这里UNRAID基本已经帮你做好了应用模板,只需要确认一下是否需要更改端口号和portainer_data路径:
汉化
汉化似乎没什么必要,如果实在看不懂英文借助浏览器的翻译是最简单的方法。不然其实中英文混着看实际上比较费劲。
最简单的汉化办法是直接拉取已经做好的portainer中文镜像:6053537/portainer-ce即可。
部署命令为:
docker run -d -p 9000:9000 —name portainer —restart always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data 6053537/portainer-ce
不过这个镜像目前要视作者的更新进度,即如果没有很重要的更新,该容器一般不会更新。
另外一种汉化办法——打汉化补丁,非常麻烦,portainer进行版本更新也容易出问题,个人不太推荐,如果需要的话可以自行问度娘即可。
初始化
输入[服务器IP]:9000,进入Portainer初始化页面:
设置密码:
点击开始即可:
基础管理功能使用
Docker容器概览
管理容器(Containers)
查看容器列表:登录Portainer后,点击左侧菜单栏的“容器”选项,你将看到当前Docker环境中所有容器的列表。
启动、停止和重启容器:在容器列表中,你可以看到每个容器右侧的操作按钮,包括启动、停止和重启。点击相应的按钮,即可对容器进行相应操作。
查看容器日志:点击容器列表中的容器名称,进入容器详情页面。在此页面,点击“日志”选项卡,你可以查看容器的运行日志。
进入容器控制台:在容器详情页面,点击“控制台”选项卡,然后点击“连接”按钮,即可进入容器的命令行控制台。
容器升级:使用Portainer更新单一容器是非常简单的事情。
随意进入某个容器的详情,点击编辑(Edit):
在编辑页面,更改镜像名称:
注:如果想要更新容器到最新版,只需要添加latest即可;如果是更新到特别版本,请在尾部添加特定版本号,这些在docker hub上均可找到对应的信息。
然后点击部署容器即可:
管理镜像(Images)
查看镜像列表:点击左侧菜单栏的“镜像”选项,你将看到当前Docker环境中所有镜像的列表。
搜索和拉取镜像:在镜像页面,点击右上角的“拉取镜像”按钮,输入镜像名称和标签,然后点击“拉取镜像”按钮,即可从Docker Hub或其他镜像仓库拉取镜像。
删除镜像:在镜像列表中,点击每个镜像右侧的垃圾桶图标,即可删除镜像。
管理网络(Networks)
查看网络列表:点击左侧菜单栏的“网络”选项,你将看到当前Docker环境中所有网络的列表。
创建网络:在网络页面,点击右上角的“创建网络”按钮,选择网络类型(桥接、主机或覆盖),输入网络名称,然后点击“创建网络”按钮,即可创建新的网络。
删除网络:在网络列表中,点击每个网络右侧的垃圾桶图标,即可删除网络。
管理堆栈(Stacks)
查看堆栈列表:点击左侧菜单栏的“堆栈”选项,你将看到当前Docker环境中所有堆栈的列表。堆栈是一组相关联的服务,使用Docker Compose文件定义,稍后我们也会用该功能带着大家做一些很酷的事情。
创建堆栈:在堆栈页面,点击右上角的“创建堆栈”按钮,输入堆栈名称,选择部署方式(Web编辑器、上传Compose文件或从URL部署),然后点击“创建堆栈”按钮,即可部署新的堆栈。
更新堆栈:在堆栈列表中,点击堆栈名称进入堆栈详情页面。在此页面,你可以修改Docker Compose文件,然后点击“更新堆栈”按钮,以便应用新的配置。
删除堆栈:在堆栈列表中,点击每个堆栈右侧的垃圾桶图标,即可删除堆栈。
去除黄标升级提示
安装完portainer-ce版本后,右上角总是会出现一个提示升级到be版本:
怎么关掉这个烦人的提示呢?
首先:打开Chrome应用商店,然后搜索ADBlock:
点击添加至Chrome:
然后在portainer页面,点击拦截此广告:
选择“看起来不错”:
然后烦人的升级广告就没有啦。
总结
通过以上介绍,你应该已经了解了Portainer的基础用法。Portainer是一个强大的容器管理工具,适用于从初学者到专业人士的各种场景。在实际应用中,用户可以根据需要选择使用Portainer的基本功能或高级功能,以便更好地管理和监控你的容器化应用程序。
还没有评论,来说两句吧...