使用GUI工具Portainer.io管控Docker容器

背景

5年前容器技术扑面而来,如今已经成为面向云原生开发的基础架构,基于微服务的设计需要部署大量容器,同时强调了友好快速的管理容器。

是时候推荐一个轮子Portainer.io:提供GUI界面的容器管理工具,给开发者的工具箱又增加了一个炫酷又实用的瑞士军刀。

Portainer.io的优势

  • 轻量级 (2,3个命令就可启动,镜像少于30M)

  • 健壮、 友好

  • 可以用于Docker监控和构建

  • 提供Docker环境的详细信息

  • 可在界面管理 Container、Image、Network、Volume、Config

Portainer.io特性

  • 漂亮的Dashboard,很容器操作和监视

  • 许多内置的操作模板

  • 尽乎实时的 监视Container、Image...

  • 支持Docker-Swarm 集群监视

安装Portaniner.io

为Porttainer.io 创建Volume

sudo docker volume create portainer_data

启动portainer容器,配置在宿主机9000端口映射

 sudo docker run -d -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer
Unable to find image 'portainer/portainer:latest' locally
latest: Pulling from portainer/portainer
d1e017099d17: Pull complete
f4f2fd75fb8a: Pull complete
Digest: sha256:026381c60682b82a863f0c3737a9b4a414beaddd4cf050477a7749ff5ac61189
Status: Downloaded newer image for portainer/portainer:latest
82756791026adda45c288ca465ef38ca2e2aefaad2b27da6ae3831a517db4ad8

请确保OS防火墙允许9000端口访问

睁眼看Portainer.io

  1. 首次访问请注册用户

  2. 我是在Docker宿主机上安装的portainer.io,故我选择Local

  3. 概览如下:

  4. 点击任意一个红框对象,进入‘Dashboard Endpoint summary’

简单的Docker监控

  • 在Container标签页使用container命令操作测试容器:

这个页面会显示所有的容器,包括Stopped,可使用docker system prune  -a:Remove all unused images not just dangling ones

点击每个容器,可进入查看容器的详细信息:Container status/Container health/Container details/Connected networks/Volumes

  • Image标签页,这里显示所有Image,这类可以拉取、构建、导入导出镜像

  • 根据模板快速创建服务堆栈 点击‘'App Template’, 进入容器构建页面。选择WordPress模板操作之后,可生成新的服务堆栈:

是不是很6,这个服务堆栈已经使用WordPress模板预置,配置详情查看Update页面设定的远程docker-stack.yml地址:https://github.com/portainer/templates/blob/master/stacks/wordpress/docker-stack.yml

version: '3'
services:db:image: mysql:5.7volumes:- db_data:/var/lib/mysqlrestart: alwaysenvironment:MYSQL_ROOT_PASSWORD: ${MYSQL_DATABASE_PASSWORD}MYSQL_DATABASE: wordpressMYSQL_USER: wordpressMYSQL_PASSWORD: wordpresswordpress:image: wordpress:latestports:- 80restart: alwaysenvironment:WORDPRESS_DB_HOST: db:3306WORDPRESS_DB_USER: wordpressWORDPRESS_DB_PASSWORD: wordpressvolumes:db_data:

其他Stack、Service、Network、Volume、Config请自行倒腾, 外围配置Extension,Registries 可配置安全特性和 镜像注册中心。

以上就是本文的全部内容,希望这个Portainer GUI文章有助于您更有效地管理和监视容器。真诚的希望得到您的反馈。

推荐阅读

● 程序员应对浏览器同源策略的姿势

● 一文掌握Cookies前世今生

● ASP.NET Core跨平台技术内幕

● TPL Dataflow组件应对高并发,低延迟要求

● 实例解读Docker Swarm

● 基于docker-compose的Gitlab CI/CD实践&排坑指南

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/311047.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[蓝桥杯][算法提高VIP]凶手-思维

题目描述 巴斯维克命案抓住了六个嫌疑犯,他们的口供如下: A:我不是罪犯 B:A、C中有一个是罪犯 C:A和B说了假话 D:C和F说了假话 E:其他五个人中,只有A和D说了真话 F:我是罪…

php mysql 子查询_php – MySQL查询和子查询

我有这样的查询:SELECT SUM(price) AS GINTO,((SELECT COUNT(price)*9.99 FROM sms_logs WHERE price 200000)(SELECT COUNT(price)*3.99 FROM sms_logs WHERE price 60000)(SELECT COUNT(price)*1.99 FROM sms_logs WHERE price 24000)(SELECT COUNT(price)*0.9…

【项目升级】集成Quartz.Net Job实现(一)

这两天的新闻也是越来越多了,不仅Github接手了NPM,还有.NET 5也要新鲜出炉了(11月正式发布),当然还有MVP峰会也正在如火如荼的展开,会有哪些好的东西被碰撞出来,也是很期待的。这些天我也简单的…

DevC++如何安装自定义头文件并使用

首先我们打开DevC,然后点击新建。 新建一个控制台应用程序 取一个喜欢的文件名。 然后会出现如下界面。 点击新建单元 将头文件源码放入 找到空白位置,右键,然后点关闭并保存 保存的文件名要为头文件的名字 使用这个头文件时,只…

sas sql中有类似mysql的 g_SAS中的SQL

自我愚见,望有错指出改之。/*SQL 学习*//*数据定义语言(DDL):create、drop、alter*//*数据操作语言(DML):insert、update、delete*//*数据查询语言(DQL):select*//*数据控制语言(DCL):grant、remove、commit、rollback…

论ORM之EFCore初篇(快速基于本地数据库实现数据操作)

欢迎大家阅读《朝夕Net社区技术专刊》第6期我们致力于.NetCore的推广和落地,为更好的帮助大家学习,方便分享干货,特创此刊!很高兴你能成为忠实读者,文末福利不要错过哦!前言:今天准备带大家一站…

C++变量的初始化问题及列表初始化

在C中,初始化是一个异常复杂的问题,很多人认为初始化是赋值的一种,事实上,初始化和赋值是两个完全不同的操作。 列表初始化 要定义一个名为haif的int变量并初始化为0,以下4条语句都可以做到。 int haif 0; int hai…

c++ set 遍历_47. Set 是如何工作的(3) 遍历顺序是如何确定的?

Set 是无序容器,它的插入顺序与迭代(或者 print)输出的顺序不保证与插入顺序一致,与 Dict 类似的问题,Set 的输出顺序是如何决定的呢?首先我们从 Set 的输出开始寻找蛛丝马迹,在 Dict 的研究中&…

跟着“土牛”学架构知识

这里的土牛是指abp的作者,土耳其人,简称“土牛”,前两天看了他分享的ppt,这里做个小笔记。架构分层图一(abp作者)图二(clean架构)图三(在朋友圈看到的)每种架…

《C++ Primer》2.6.1节练习

练习2.39: 在类体花括号后加一个分号就好了。 练习2.40: 代码如下: struct Sales_data{std::string bookNo;//书籍编号unsigned units_sold 0;//销售量double sellingprice 0.0;//零售价double saleprice 0.0//实售价double discount 0…

Cef mysql.exe_CEF3.2623使用记录:windows编译

CEF3.2623使用记录:windows编译1:cef3.2623下载地址2623是cef3最后一个支持xp系统的版本,且可以支持html的audio标签,可以用作对html音频的处理下载地址为 https://bitbucket.org/chromiumembedded/cef/branch/2623。下载win32版本…

Asp.Net Core 中IdentityServer4 授权流程及刷新Token

一、前言上面分享了IdentityServer4 两篇系列文章,核心主题主要是密码授权模式及自定义授权模式,但是仅仅是分享了这两种模式的使用,这篇文章进一步来分享IdentityServer4的授权流程及refreshtoken。系列文章目录(没看过的先看这几篇文章再来…

C++关于const限定符,这一篇足够!!!

C关于const限定符,这一篇足够!!!const限定符初始化和constconst引用初始化和对const的引用对const的引用可能引用一个并非const对象指针和constconst指针顶层constconst限定符 有时候我们希望定义这样一种变量,它的值不能被改变。…

liunx版mysql服务无法启动_linux环境下mysql无法启动

无论发现怎样的问题,首先查看err日志。问题一:查询err日志显示权限问题。分析:mysql原本是所属mysql用户,如果在root用户下启动就有可能出现问题。解决:(1)查看mysql的权限(2)发现有root权限,混乱了。所以先…

玩转控件:重写/重绘Dev中MessageBox弹窗控件

很久没有更新博客了,本想着直接发一篇《手撕ERP》系列,从控件重写、重绘,到框架搭建,再到部分模块实现业务的。但是每次动手的时候,都觉得难以下手。直接从数据库设计开始吧,模块设计还没定下来&#xff0c…

mysql innodb status_查看innodb的运行状态

show innodb status 在以后的mysql版本将会被show engine innodb status所替代。总所周知show engine innodb status是用来查看当前的mysql数据库中innodb表的相关状态。1:show engine innodb status。-----------------------------------| Type | Name | Status |…

[蓝桥杯][算法提高VIP]扫雷-枚举

题目描述 扫雷游戏你一定玩过吧&#xff01;现在给你若干个nm的地雷阵&#xff0c;请你计算出每个矩阵中每个单元格相邻单元格内地雷的个数&#xff0c;每个单元格最多有8个相邻的单元格。 0< n,m< 100 &#xff08;注意两个矩阵之间应该有一个空行&#xff0c;由于oj的…

.NET Core开发实战(第26课:工程结构概览:定义应用分层及依赖关系)--学习笔记...

26 | 工程结构概览&#xff1a;定义应用分层及依赖关系从这一节开始进入微服务实战部分这一节主要讲解工程的结构和应用的分层在应用的分层这里定义了四个层次&#xff1a;1、领域模型层2、基础设施层3、应用层4、共享层可以通过代码来看一下源码链接&#xff1a;https://githu…

mysql outfile 变量_转mysql dumpfile 与 outfile 函数的区别

一直以为两个函数作用是相同的 经过简单测试发现还是有些区别的 如下表admin mysql select * from admin; ------------------------- | uid | name | pass | ------------------------- | 1 | admin | baidusb | | 2 | root | hacksb | | 3 | manage一直以为两个函数作用是相同…

[蓝桥杯][算法提高VIP]排列式-全排列

题目描述 7254是一个不寻常的数&#xff0c;因为它可以表示为7254 39 x 186&#xff0c;这个式子中1~9每个数字正好出现一次 输出所有这样的不同的式子&#xff08;乘数交换被认为是相同的式子&#xff09; 结果小的先输出&#xff1b;结果相同的&#xff0c;较小的乘数较小的…