百度360必应搜狗淘宝本站头条
当前位置:网站首页 > IT技术 > 正文

Docker 图形化工具 Portainer及详细介绍

wptr33 2024-11-20 22:38 15 浏览

Portainer 是一款轻量级的应用,它提供了图形化界面,用于方便地管理Docker环境,包括单机环境和集群环境





安装

首先下载portainer的docker镜像: docker pull portainer/portainer

然后运行portainer容器:

docker run -d -p 9000:9000 -p 8000:8000 --name portainer \

--restart=always \

-v /var/run/docker.sock:/var/run/docker.sock \

-v /datas/portainer/data:/data \

-v /etc/localtime:/etc/localtime \

-d portainer/portainer

第一次登录的时候需要创建管理员账号,访问地址http://172.18.35.27:9000


选择连接到本地docker环境,连接成功后就可以使用portainer进行可视化管理了





打开FounderIt02,进入dashboard看板,可以看到如下信息:statcks、containers、images、volumes、networks等概要信息


进入其中,可以查看详细信息:如下:

statcks


containers

images

networks

volumes

app templates

打开App Templates菜单可以看到很多创建容器的模板,通过模板设置下即可轻松创建容器,支持的应用还是挺多的;

container菜单

打开Containers菜单,可以看到当前创建的容器,我们可以对容器进行运行、暂停、删除等操作;

容器列表中可以看到名称、状态、镜像、端口等

还可以通过quick actions,查看容器logs、Inspect、stats、exec console


logs

Inspect

stats

console


container deatails: 容器详情,可以对容器进行:启动、停止、杀进程、重启、暂停、删除、重建,编辑等操作。





用户管理:





端点管理

端点管理,可以管理集群服务器,可以通过agent、edge agent、docker、azure方式添加端点,这里介绍agent和docker两种方式:




agent方式



首先在要管理的端点服务器执行:curl -L https://downloads.portainer.io/agent-stack.yml -o agent-stack.yml && docker stack deploy --compose-file=agent-stack.yml portainer-agent

如果agent-stack.yml文件下载不了,



可以通过浏览器下载,下载地址https://downloads.portainer.io/agent-stack.yml -o agent-stack.yml

编辑agent-stack.yml文件

vim agent-stack.yml

version: '3.2'

services:

agent:

image: portainer/agent:2.11.1

volumes:

- /var/run/docker.sock:/var/run/docker.sock

- /var/lib/docker/volumes:/var/lib/docker/volumes

ports:

- target: 9001

published: 9001

protocol: tcp

mode: host

networks:

- portainer_agent

deploy:

mode: global

placement:

constraints: [node.platform.os == linux]

networks:

portainer_agent:

driver: overlay

attachable: true

执行docker stack deploy --compose-file=agent-stack.yml portainer-agent

结果:

容器:

镜像:

在部署poertainer-agent的时候可能出现

如果出现this node is not a swarm manager. Use "docker swarm init" or "docker swarm join" to connect this node to swarm and try again的错误提示:

执行:docker swarm init

至此服务器端就准备完毕,填写端点信息,完成端点添加


docker方式

docker方式

添加其他服务器(docker)节点

由于局域网内还有其他的服务器上的docker需要管理,因此要添加其他服务器节点。

但是我不需要添加服务器,我只添加docker容器

首先要先把其他的服务器的2375端口打开

vim /usr/lib/systemd/system/docker.service

Ubuntu操作系统docker.service在:/lib/systemd/system目录下

ExecStart=/usr/bin/dockerd 后插入 -H tcp://0.0.0.0:2375 -H unix://var/

run/docker.sock



systemctl daemon-reload //重启虚拟机

systemctl restart docker //重启docker

然后在平台添加endpoint

最终如下所示

registry管理

registry管理

添加个人镜像库,这里



相关推荐

C++企业级开发规范指南(c++开发gui)

打造高质量、可维护的C++代码标准一、前言C++作为一门功能强大的系统级编程语言,被广泛应用于操作系统、游戏引擎、高性能服务器、数据库系统等领域。知名互联网公司(如Google、Microsoft、腾...

C++|整型的最值、上溢、下溢、截断、类型提升和转换

整数在计算机内以有限字长表示,当超出最值(有限字长)时,需要截断(溢出,求模)操作。不同字长的整型具有不同的值域,混合运算时,需要类型提升和转换。1整形最值在<limit.h>中有整型的...

C++|漫谈STL细节及内部原理(c++ std stl)

1988年,AlexanderStepanov开始进入惠普的PaloAlto实验室工作,在随后的4年中,他从事的是有关磁盘驱动器方面的工作。直到1992年,由于参加并主持了实验室主任BillWo...

C++11新特性总结 (二)(c++11新特性 pdf)

1.范围for语句C++11引入了一种更为简单的for语句,这种for语句可以很方便的遍历容器或其他序列的所有元素vector<int>vec={1,2,3,4,5,6};f...

C++ STL 漫谈(c++中的stl到底指的什么)

标准模板库(StandardTemplateLibrary,STL)是惠普实验室开发的一个函数库和类库。它是由AlexanderStepanov、MengLee和DavidRMusser在...

C++学习教程_C++语言随到随学_不耽误上班_0基础

C++学习教程0基础学C++也可以,空闲时间学习,不耽误上班.2019年C语言新课程已经上线,随到随学,互动性强,效果好!带你征服C++语言,让所有学过和没有学过C++语言的人,或是正准备学习C++语...

C++遍历vector元素的四种方式(c++ 遍历vector)

vector是相同类型对象的集合,集合中的每个对象有个对应的索引。vector常被称为容器(container)。C++中遍历vector的所有元素是相当常用的操作,这里介绍四种方式。1、通过下标访问...

一起学习c++11——c++11中的新增的容器

c++11新增的容器1:array当时的初衷是希望提供一个在栈上分配的,定长数组,而且可以使用stl中的模板算法。array的用法如下:#include<string>#includ...

C++编程实战基础篇:一维数组应用之投票统计

题目描述班上有N个同学,有五位候选人“A,B,C,D,E”,请所有的同学投票并选举出班长,现在请你编写程序来他们计算候选人的得票总数,每位同学投票将以数字的形式投票“12345”分别代表五位候选人,...

C++20 新特性(6):new表达式也支持数组大小推导

new表达式也支持数组大小推导在C++17标准中,在定义并初始化静态数组时,是可以忽略数组大小,然后通过初始化数据来推导数组的大小。但使用new来定义并初始化动态数组时,并不支持这种自动推导数组大...

C++ 结构体(struct)最全详解(c++结构体用法)

一、定义与声明1.先定义结构体类型再单独进行变量定义structStudent{intCode;charName[20];charSex;intA...

自学 C++ 第 6 课 二维数组找最值

键盘输入一个m×n的二维数组,通过C++编程找出元素中的最大值,并输出其所在的位置坐标。例如,输入一个4×5的二维数组,数组元素分别为{{556623749},{578964563},...

从缺陷中学习C/C++:聊聊 C++ 中常见的内存问题

在写C/C++程序时,一提到内存,大多数人会想到内存泄露。内存泄露是一个令人头疼的问题,尤其在开发大的软件系统时。一个经典的现象是,系统运行了10天、1个月都好好的,忽然有一天宕机了:OOM(Out...

C++开发者都应该使用的十个C++11特性(上)

在C++11新标准中,语言本身和标准库都增加了很多新内容,本文只涉及了一些皮毛。不过我相信这些新特性当中有一些,应该成为所有C++开发者的常规装备。你也许看到过许多类似介绍各种C++11特性的文章。下...

深度解读C/C++指针与数组(c++指针和数组的区别)

指针和数组是密切相关的。事实上,指针和数组在很多情况下是可以互换的。例如,一个指向数组开头的指针,可以通过使用指针的算术运算或数组索引来访问数组。今天我们就来聊一聊数组和指针千丝万缕的关系;一维数组与...