【云原生】Docker可视化工具Portainer使用详解

目录

一、前言

二、docker可视化管理概述​​​​​​​

2.1 什么是docker可视化管理

2.1.1 Docker可视化管理常用功能

2.2 为什么需要docker可视化管理工具

2.3 docker可视化工具带来的好处

三、常用的docker容器可视化管理工具解决方案

3.1 Portainer

3.2 Rancher

3.2.1 Rancher功能特性

3.3 Docker Desktop

3.3.1 Docker Desktop功能特性

3.4 Kitematic

3.4.1 Kitematic 功能特性

3.5 Shipyard

3.5.1 Shipyard主要功能特性

四、Portainer 介绍

4.1 Portainer 概述

4.1.1 Portainer 整体架构

4.2 Portainer主要特点和功能

4.3 Portainer 使用场景

4.4 Portainer 相对其他可视化工具的优势

五、Portainer 部署与使用

5.1 部署前准备

5.1.1 Portainer 安装部署方式介绍

5.2 使用docker搭建Portainer

5.2.1 创建数据卷

5.2.2 拉取镜像

5.2.3 启动镜像

5.2.4 web界面访问

5.2.5 添加admin账户密码

5.3 Portainer 界面基本使用

5.3.1 界面基本功能

5.3.2 添加新的docker节点

5.3.3 Portainer 添加swarm集群

5.4 Portainer Image(镜像)相关操作

5.4.1 拉取镜像

5.4.2 删除镜像

5.4.3 添加自定义镜像仓库

5.5 Portainer Networks(网络)相关操作

5.5.1 创建自定义网络

5.6 Portainer Container(容器)相关操作

5.6.1 启动容器

5.6.2 创建新容器

六、写在文末


一、前言

伴随着云原生技术的广泛使用,作为最底层的容器技术docker,在越来越多的公司中得到认可和规模化使用,但是在实践过程中发现,当docker技术运用于生产实践时,纯命令式的操作仍然给很多开发和运维带来了较多的学习和使用成本,为此,经过多年的发展,市面上也逐渐开始产生了可视化的docker容器和镜像管理工具,利用这些可视化界面工具,可以更简单的运维docker镜像,本文将详细探讨下docker可视化容器管理工具的使用。

二、docker可视化管理概述

2.1 什么是docker可视化管理

Docker可视化管理是指通过图形用户界面(GUI)或其他可视化工具来管理Docker容器、镜像、网络和数据卷等资源的过程。这种管理方式通过图形化操作界面代替了传统的命令行操作,使得Docker的管理更加直观和易用。

2.1.1 Docker可视化管理常用功能

Docker可视化管理工具,通常会提供如下功能:

  • 图形化展示Docker容器、镜像和网络等资源的关系和状态。

  • 提供容器的创建、启动、停止和删除等基本操作的图形化界面。

  • 允许用户通过可视化方式对镜像进行拉取、推送、构建和管理。

  • 提供监控和日志查看功能,方便用户实时监控和调试容器的运行状态。

  • 支持多节点的集群管理,可以管理多个Docker节点上的容器和服务。

  • 可能提供一些高级功能,如滚动更新、安全审查、自动扩展等。

通过Docker可视化管理工具,用户可以以图形化的方式管理整个Docker环境,降低了学习难度和操作复杂度,使得更多的人可以方便地使用Docker进行容器化应用的开发、部署和管理。

2.2 为什么需要docker可视化管理工具

在一定程度上,团队使用docker可视化管理工具是为了提升团队对docker容器的管理和使用效率,通常来说需要Docker可视化管理工具有下面几个原因:

  1. 降低学习门槛:对于不熟悉命令行操作的用户,可视化管理工具提供了更直观、易于理解的界面,降低了使用Docker的学习难度。

  2. 提高效率:可视化管理工具能够简化一些繁琐的操作,通过图形化界面可以更快速、方便地管理和监控容器、镜像和网络等Docker资源。

  3. 监控和调试:可视化工具通常提供了监控和调试功能,用户可以通过界面实时监控容器的运行状态、资源使用情况等,方便排查问题和优化性能。

  4. 团队协作:在团队开发和运维中,可视化管理工具提供了统一的界面和操作方法,有助于团队成员之间的协作和沟通,提高工作效率。

  5. 可视化展示:通过可视化管理工具,用户可以直观地展示Docker容器之间的关系、网络拓扑等,有助于更清晰地理解整个容器化环境。

2.3 docker可视化工具带来的好处

使用Docker可视化工具可以带来以下好处:

  1. 直观性更好

    1. 可视化工具能够以图形化界面展示Docker容器、镜像、网络等资源,使得用户可以通过直观的方式了解和管理这些资源。

  2. 使用难度降低

    1. 对于不熟悉命令行操作的用户来说,可视化工具提供了更加用户友好的界面,使得他们可以更轻松地进行Docker的管理和操作。

  3. 监控和调试方便

    1. 可视化工具通常提供了监控和调试的功能,用户可以通过界面查看容器的运行状态、资源利用情况等,方便排查问题和优化性能。

  4. 能够快速部署

    1. 通过可视化工具,用户可以方便地进行容器的部署和管理,简化了一些繁琐的操作,提高了工作效率。

  5. 团队协作方便

    1. 在团队开发和运维中,可视化工具可以提供统一的界面和操作方法,有助于团队成员之间的协作和沟通。

三、常用的docker容器可视化管理工具解决方案

随着docker技术的发展成熟,以及行业对可视化管理工具的需求增强,市场上也陆续出现了不少企业级docker容器可视化管理工具解决方案,下面列举一些较为成熟的解决方案。

3.1 Portainer

Portainer 是一个开源的轻量级Docker管理界面,提供直观的图形化用户界面,支持快速部署、操作和监控Docker容器、镜像、服务等。

Portainer提供用户管理、权限控制、容器生命周期管理、镜像操作、服务堆栈管理等功能。支持多节点管理和面板化展示。

3.2 Rancher

Rancher 是一个开源的容器管理平台,支持Kubernetes和Docker Swarm,提供了强大的集群管理和应用部署功能。官网地址:Enterprise Kubernetes Management Platform & Software | Rancher 。

  • 开源的企业级的Pass容器管理平台,通过rancher,企业不需要再适用一系列的开源组件从头搭建自己的容器平台了;

  • Rancher提供了在生产环境下使用的管理Docker和Kubernetes的全栈化容器部署与管理平台;

3.2.1 Rancher功能特性

  • 作为企业级容器编排的基础设施

    • 可以使用任何公有云或者私有云的linux主机资源;

    • linux主机可以是虚拟机,也可以是物理机;

    • Rancher 只需要主机有CPU,内存,本地磁盘和网路资源即可,即从Rancher 的角度讲,一台云厂商提供的虚拟机和自己的一台物理机是一样的;

  • 集中式的容器编排与调度

    • 几乎包含了当下全部主流的编排调度引擎,比如:Docker Swarm ,Kubernetes,Mesos;

    • 同一个用户可以创建Swarm或者Kubernetes集群,并且可以使用原生的Kubernetes或者Swarm工具管理创建的应用;

    • 除了 Swarm ,Kubernetes,Mesos 之外,Rancher还支持自己的Cattle容器编排调度引擎;

    • Cattle被广泛用于编排Rancher自己的基础设施服务以及用于Swarm 集群,Kubernetes集群和Mesos集群的配置,管理与升级等;

3.3 Docker Desktop

Docker Desktop 是 Docker 公司为个人开发者和小型团队提供的一个桌面应用程序,用于在本地计算机上运行和管理 Docker 容器化应用。它提供了一个集成的开发环境,让用户可以在自己的电脑上轻松使用 Docker 技术进行开发、测试和部署。

3.3.1 Docker Desktop功能特性

Docker Desktop主要功能特性如下:

  • 跨平台支持

    • Docker Desktop 支持在 Windows 和 macOS 操作系统上运行,为这两个主要的桌面操作系统提供了 Docker 引擎的功能;

  • 容器化开发环境

    • 允许开发者在本地快速搭建和管理容器化的开发环境,无需连接到远程服务器或使用云服务。这样可以保持开发环境与生产环境的一致性;

  • 集成工具

    • 包括 Docker Engine、Docker CLI(命令行接口)和 Docker Compose。用户可以通过 Docker CLI 进行容器的操作管理,使用 Docker Compose 管理多容器应用的配置和部署;

  • 图形用户界面 (GUI)

    • 提供了用户友好的图形界面,方便用户进行容器和服务的管理。通过 GUI,用户可以直观地查看、启动、停止和删除容器,管理容器的网络和卷等;

  • 应用商店和模板

    • Docker Desktop 提供了一个集成的应用商店,用户可以从中获取和部署预先配置好的应用模板,加速开发和测试流程。

  • 配置选项

    • 支持用户对 Docker 环境进行高级配置,如内存和 CPU 的分配、网络设置等,以满足不同场景下的需求;

3.4 Kitematic

Kitematic 是一个由 Docker 官方提供的图形用户界面 (GUI) 工具,专门用于简化 Docker 容器的管理。它提供了直观的界面和易用的功能,旨在帮助用户更轻松地使用 Docker 容器化技术。

3.4.1 Kitematic 功能特性

Kitematic 具备如下功能特性:

  • 提供图形用户界面

    • Kitematic 提供了直观、易于理解的图形化用户界面,用户无需深入学习命令行操作,即可进行 Docker 容器的管理;

  • 部署简便

    • 用户可以通过 Kitematic 快速地拉取、启动和停止容器,无需记忆复杂的 Docker 命令;

  • 便于容器搜索和浏览

    • 提供容器的搜索和浏览功能,用户可以浏览 Docker Hub 上的各种容器镜像,以及已有的本地镜像

  • 便于容器管理

    • 用户可以通过 Kitematic 方便地管理容器,进行启动、停止、删除等操作,也可以查看容器的日志和状态信息;

  • 本地与远程连接

    • 支持连接到本地 Docker 安装,同时也可以连接到远程 Docker 主机,便于管理和操作容器

  • 跨平台支持

    • Kitematic 可以在 Windows 和 macOS 操作系统上运行,为用户提供了跨平台的容器管理解决方案;

总的来说,Kitematic 提供了一个简单直观的容器管理工具,适用于入门级用户和那些希望快速上手 Docker 技术的个人开发者和小型团队。

3.5 Shipyard

Shipyard是一个用于管理Docker容器和集群的开源Web用户界面。它提供了一个直观的图形用户界面,用于管理和监控Docker容器和集群。Shipyard可以让用户轻松地进行容器的部署、监控容器的状态、管理容器的网络和卷等操作。

3.5.1 Shipyard主要功能特性

  • 可视化用户界面

    • 提供直观、用户友好的图形界面,无需深入学习命令行操作,即可进行Docker容器的管理;

  • 容器管理

    • 支持容器的创建、启动、停止、删除等基本操作,用户可以方便地管理容器的生命周期;

  • 集群管理

    • 支持管理多个Docker主机,提供集中式的管理和监控功能;

  • 容器监控

    • 提供实时的容器监控功能,用户可以查看容器的运行状态、资源使用情况等;

  • 网络和存储管理

    • 支持管理容器使用的网络和存储卷,方便用户配置容器之间的通信和数据存储;

  • 用户权限和认证

    • 支持用户权限管理和认证,允许管理员分配不同的权限给不同的用户或用户组

Shipyard提供了一个简单直观的容器管理工具,适用于入门级用户和希望快速上手Docker技术的个人开发者和小型团队。

四、Portainer 介绍

4.1 Portainer 概述

Portainer 是一个开源的轻量级容器管理界面,专门用于管理 Docker 容器引擎。它提供了直观的图形化用户界面,使用户可以更轻松地进行 Docker 容器、镜像、卷以及网络的管理和操作。

4.1.1 Portainer 整体架构

如下是官网提供的关于Portainer 的整体架构

4.2 Portainer主要特点和功能

Portainer主要的特点和功能如下:

  • 用户友好的界面

    • Portainer 提供了直观、易于理解的用户界面,使得用户无需深入学习命令行操作,即可轻松进行 Docker 容器的管理。

  • 功能丰富

    • 支持容器的创建、启动、停止、删除等基本操作,同时支持镜像的拉取、构建、推送和管理。

    • 提供容器和服务的堆栈(Stack)管理,方便用户进行多容器应用的编排和部署。

  • 多节点管理支持

    • 可以管理多个 Docker 主机节点,提供集中式的管理和监控功能。

    • 支持在多个 Docker Swarm 节点或者 Docker 主机上进行统一的管理和操作。

  • 权限控制

    • 提供基于角色的访问控制和权限管理,允许管理员分配不同的权限给不同的用户或用户组,保障系统安全。

  • 监控和日志查看

    • 可以实时查看容器的运行状态、资源使用情况和日志,方便用户快速定位和解决问题。

  • 应用模板

    • 支持从应用模板库中快速部署常见应用,简化了容器化应用的部署流程。

  • 轻量级和易部署

    • Portainer 本身是一个轻量级的容器应用,易于部署和管理,可以作为容器运行在任何支持 Docker 的环境中

4.3 Portainer 使用场景

Portainer 可以在多种场景下发挥作用,主要适用于以下几个方面的使用场景:

  • 个人开发者

    • 本地开发环境: 在个人计算机上使用 Portainer 管理本地的 Docker 容器,方便快速部署、管理和测试应用。

    • 学习和实验: 对于初学者或者希望快速上手 Docker 的人员,Portainer 提供了直观的图形界面,降低了学习曲线。

  • 小型团队

    • 团队协作: 小型开发团队可以使用 Portainer 统一管理团队成员的 Docker 容器和应用,提高团队的协作效率。

    • 持续集成/持续部署 (CI/CD): 可以结合 CI/CD 工具,如 Jenkins 或 GitLab CI,使用 Portainer 管理容器化的构建和部署流程。

  • 中小型企业

    • 生产环境管理: 在生产环境中,Portainer 可以帮助企业管理多个 Docker 主机或 Docker Swarm 集群,提供集中式的监控和管理。

    • 安全审查和权限管理: 提供基于角色的访问控制和权限管理功能,保障容器和数据的安全性。

  • 教育和培训

    • 教学用途: 在教育机构或者培训课程中,Portainer 可以作为展示 Docker 管理和操作的工具,帮助学生理解和实践容器化技术。

  • DevOps 环境

    • DevOps 自动化: 在 DevOps 环境中,Portainer 可以作为工具链的一部分,与其他工具如 Prometheus、Grafana 等结合,实现容器化应用的监控和自动化管理。

总之,Portainer 提供了一个灵活且易于使用的平台,适合从个人开发者到中小型企业的不同用户群体,帮助他们管理和操作 Docker 容器化环境,提升工作效率并简化管理任务。

4.4 Portainer 相对其他可视化工具的优势

上面介绍了多种docker的可视化管理工具,既然有这么多的选择,为什么要选择Portainer 呢,相比其他可视化工具,Portainer 的优势在哪里呢?下面列举了一些可供选择参考的理由:

  • 轻量级

    • Portainer 是一个轻量级的容器管理工具,占用资源较少,适合于资源有限的个人开发者或小型团队使用。

  • 使用简单

    • Portainer 提供直观的用户界面和简单易用的功能,降低了学习成本,使新手和入门用户能够轻松上手。

  • 多平台支持

    • Portainer 支持在 Windows、Linux 和 macOS 等多个主流操作系统上运行,为用户提供了跨平台的容器管理解决方案。

  • 适合多容器管理

    • Portainer 可以管理单个Docker主机上的多个容器,也可以管理多个Docker主机组成的集群,支持集中式的管理和监控。

  • 功能丰富

    • Portainer 提供了丰富的功能,包括容器、镜像、卷、网络等资源的管理,还支持用户权限管理和认证,满足了不同用户群体的需求。

  • 活跃的社区支持

    • Portainer 有一个活跃的开源社区,用户可以获得来自社区的技术支持和持续的更新与改进。

五、Portainer 部署与使用

官网地址:Kubernetes and Docker Container Management Software;

项目开源地址:GitHub - portainer/portainer: Making Docker and Kubernetes management easy.;

Portainer CE 社区版安装部署官网文档:Install Portainer CE | Portainer Documentation;

5.1 部署前准备

服务器:

  • 2~3台,每一条服务器均安装了dokcer;

  • 一台用于安装Portainer ,另外1~2台用于接入Portainer ;

5.1.1 Portainer 安装部署方式介绍

通过官网文档,点击查看官网提供的安装手册

Portainer 目前提供了2种版本,商业版和社区版,商业版目前是收费的,而社区版即CE版,目前是免费的,不过部分功能可能是受限的,个人或小型项目也是够用了;

点击安装,来到下面的安装文档页面

从官网的文档介绍中可以发现,Portainer 提供了多种安装部署方式,包括:

  • 基于linux的docker环境安装Portainer ;

  • 基于docker桌面安装Portainer ;

  • 基于docker compose的方式安装Portainer ;

  • 基于docker swarm安装Portainer ;

  • 基于k8s的方式安装Portainer ;

安装文档地址:Docker Standalone | 2.19 | Portainer Documentation

5.2 使用docker搭建Portainer

这是一种比较简单的安装部署方式,只需要运行一段docker命令即可,文档地址Install Portainer BE with Docker on Linux | 2.19 | Portainer Documentation

参考下面的部署流程

5.2.1 创建数据卷

这里提前创建一个独立的数据卷给下面的Portainer 容器使用

docker volume create portainer_data

5.2.2 拉取镜像

也可以不用提前拉取,直接运行容器的时候自动拉取

docker pull portainer/portainer-ee:latest

5.2.3 启动镜像

使用下面的命令启动portainer镜像,为了方便下文访问可视化界面,请提前开放8000和9443的端口;

docker run -d -p 9000:9000 --name portainer -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer

5.2.4 web界面访问

容器正常启动之后,可以通过:IP:9443访问控制台界面,注意访问的时候新版需要通过https进行访问,所以你会看到下面的效果

点击高级,然后点击继续访问即可

5.2.5 添加admin账户密码

基于上面访问的页面,添加admin管理员登录的密码

输入完毕,点击创建用户,然后跳转到登录界面,输入上述的账户和密码即可

5.3 Portainer 界面基本使用

5.3.1 界面基本功能

点击上述得 "Get Started" 之后,来到下面的页面,在这个页面展示的是Portainer 管理的docker节点信息

目前,由于Portainer 所在的这台机器安装了Docker,所以这里展示的是local,点击local进去之后,可以看到更详细的信息;

在上面的这个详情页面,展示出来了当前机器的docker环境中,Stack,Images,Containers等维度信息,比如,当我们继续点击Container ,可以看到里面的容器列表;

5.3.2 添加新的docker节点

通过左侧菜单,Environments ,点击添加新的Environment

选择第一个

选择API,填写名称和待加入的docker节点IP地址

添加之后,可以在环境列表上看到上面添加的docker节点信息了

注意:

在做这个操作的时候,当你填写了新的docker主机IP之后点击下面的connect发现无法连接,此时需要做下面的操作,否则无法对其他docker主机进行纳管;

1)进入待纳管的安装了docker的机器

找到下面的这个文件

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

2)修改下面的这行配置文件

修改为下面的这行配置

ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix://var/run/docker.sock

3)重新加载配置文件并重启docker

#重新加载配置文件
systemctl daemon-reload
#重启docker
systemctl restart docker

如果还需要添加更多的节点,也按照上述相同的操作即可,同时注意开发被纳管机器的2375端口

5.3.3 Portainer 添加swarm集群

基于上一步在Portainer 中添加docker节点的经验,按照同样的操作,我们可以在Portainer 中添加一个swarm集群,从而可以基于Portainer 对swarm集群进行管理。比如在上一篇swarm的学习中,有一个如下的swarm集群,信息如下,当前swarm集群处于运行状态中;

通过左侧的Environments 菜单,点击 Add environment

选择 Docker Swarm

选择API,然后在这个页面填写 swarm集群的名称,和managerIp+端口,点击Connect;

连接成功后,再在环境列表上面就可以看到上面添加的这个swarm信息了

通过Home菜单,可以看到上面添加的swarm

点击进入,可以看到当前这个swarm集群中的详细信息

比如可以点击Containers查看swarm集群中的容器信息

5.4 Portainer Image(镜像)相关操作

Portainer 镜像相关的操作,可以通过菜单栏左侧的Images查看,如下,右侧展示了镜像列表

5.4.1 拉取镜像

在列表的上面搜索框里面,选择你要搜索的镜像,然后点击pull即可

等待拉取完成,在列表中就能看到这个镜像了

补充说明:

在未登录的情况下,在这里拉取镜像是有次数限制的,在下面的那段描述中也有提示

5.4.2 删除镜像

勾选你要删除的镜像,点击Remove按钮即可删除镜像,要注意的是如果这个镜像正在被使用中,点击Remove的时候可能会提示你无法删除成功;

5.4.3 添加自定义镜像仓库

默认情况下,从上面的操作中可以发现拉取的镜像是从docker hub拉取的,也可以使用自定义仓库,需要手动配置一下;

点击上面的 Add Registry,在下面的页面中选择自定义镜像,通过这个链接,阿里云登录 - 欢迎登录阿里云,安全稳定的云计算服务平台,找到你的阿里云专属镜像仓库地址,然后配置到下面的表单中保存即可;

然后列表中就能看到上面自定义的镜像仓库了

如何使用呢?我们回到拉取镜像的那一步,此时再次选择镜像地址时就能看到这个自定义的镜像仓库信息了

5.5 Portainer Networks(网络)相关操作

在左侧菜单,点击Nwtworks,可以看到右侧展示出来了当前Docker主机上所有的网络列表

  • 其中标注了System的表示docker自身默认创建和使用的网络;

5.5.1 创建自定义网络

点击右上侧的添加网络

表单里面的信息不熟悉的情况下可以使用默认的即可

添加成功后就可以在列表进行查看了

5.6 Portainer Container(容器)相关操作

点击右上侧的Containers,展示的是当前主机的容器列表

5.6.1 启动容器

勾选之前使用过的但是处于停止状态的容器,比如这里我选择的是boot-k8s,点击 Start或Restart,可以看到容器就被启动了;

其他的操作,像停止容器,kill容器等操作都比较加单,可以自行尝试一下

5.6.2 创建新容器

也可以在这里Create出一个新容器,点击Add container;

来到下面的表单中,按要求填写相关的参数即可

初次填写时,为了搞清里面的各个参数项的含义,下面分别做解释说明:

  • Name,填写自定义的容器名字;

  • Image configuration,选择镜像源、镜像名字和版本;

  • Always pull the image,每次创建容器都要重新拉一次最新的镜像,不建议开启,DockerHub账号对匿名账户有次数限制;

  • Network ports configuration

    • Publish all exposed network ports to random host ports,将所有暴露的端口随机发布到主机上,不建议;

    • Manual network port publishing,手动指定暴露的端口发布到主机端口;

  • Auto remove

    • 容器停止后,自动删除该容器,不建议;

数据卷(Volumes)设置如下

网络(Network)设置

环境变量(Env)设置

以上的设置都完成后,最后点击 Deploy the container部署容器,如果现实发布成功则可以在容器列表中看到上面创建的这个容器;

六、写在文末

本文通过较大的篇幅详细介绍了docker可视化工具Portainer的使用,并通过搭建环境和界面常用功能的操作多维度介绍了Portainer如何使用和配置,希望对看到的同学有用哦,本篇到此结束,感谢观看。

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

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

相关文章

【Python机器学习】k均值聚类——矢量量化,或者将k均值看作分解

虽然k均值是一种聚类算法,但在k均值和分解方法之间存在一些相似之处。k均值尝试利用簇中心来表示每个数据点,可以看作仅用一个分量来表示每个数据点,该分量由簇中心给出。这种观点将k均值看作是一种分解方法,其中每个点用单一分量…

可视化大屏开发系列——DataV的使用

以下内容为近期个人学习总结,若有错误之处,欢迎指出! 可视化大屏开发系列——DataV的使用 一、介绍二、注意事项1、技术支持2、兼容性3、状态更新 三、实现效果四、使用(在vue2项目中)1.npm安装2.main.js中引入3.开启愉…

WordPress软件下载主题Inpandora

Inpandora(中文名为潘多拉)是一款基于软件下载站定制的WordPress主题,帮助站长使用WordPress快速搭建一个专业的WordPress软件博客。Inpandora这款WordPress主题可以说是因软件而生,从UI设计到后台设置功能,都充分体现…

设计软件有哪些?贴图插件篇(1),渲染100邀请码1a12

设计师经常要处理贴图,这里介绍一些贴图所用到的插件。 1、Substance 3D Painter Substance 3D Painter是Substance 3D软件套件中的一部分,是一款专业的纹理绘制软件。它提供了直观的界面和强大的工具,用于在3D模型上进行高质量的纹理绘制和…

【七】【QT开发应用】跨UI发送信号,跨线程发送信号

跨UI发送信号 基本框架 新建窗口 自定义信号 跨线程发送信号 新建线程 查看线程号 完整代码 跨UI发送信号 setdialog.h #ifndef SETDIALOG_H #define SETDIALOG_H#include <QDialog>namespace Ui { class setdialog; }class setdialog : public QDialog {Q_OBJECTpub…

1panel OpenResty 设置网站重定向

当我们部署网站时需要&#xff0c;输入"cheshi.com"域名回车&#xff0c;希望他自动跳转https://cheshi.com/indx/&#xff0c;而不是直接跳转https://cheshi.com时可以利用重定向来实现&#xff0c; 这里演示的是 1panel 如何设置&#xff08;nginx 貌似也是这样配…

数据结构9——排序

一、冒泡排序 冒泡排序&#xff08;Bubble Sort&#xff09;&#xff0c;顾名思义&#xff0c;就是指越小的元素会经由交换慢慢“浮”到数列的顶端。 算法原理 从左到右&#xff0c;依次比较相邻的元素大小&#xff0c;更大的元素交换到右边&#xff1b;从第一组相邻元素比较…

ChatGPT-4o也参加高考了,还写了六大考卷的全部作文! |【WeThinkIn出品】

写在前面 【WeThinkIn出品】栏目专注于分享Rocky的最新思考与经验总结&#xff0c;包含但不限于技术领域。欢迎大家一起交流学习&#x1f4aa; 欢迎大家关注Rocky的公众号&#xff1a;WeThinkIn 欢迎大家关注Rocky的知乎&#xff1a;Rocky Ding AIGC算法工程师面试面经秘籍分享…

Leetcode84 柱状图中最大的矩形

题目描述 给定 n 个非负整数&#xff0c;用来表示柱状图中各个柱子的高度。每个柱子彼此相邻&#xff0c;且宽度为 1 。 求在该柱状图中&#xff0c;能够勾勒出来的矩形的最大面积 解题思路 思路一&#xff1a;暴力寻找&#xff0c;从每个位置出发&#xff0c;向左右两边扩…

Web项目部署后浏览器刷新返回Nginx的404错误对应解决方案

data: 2024/6/22 16:05:34 周六 limou3434 叠甲&#xff1a;以下文章主要是依靠我的实际编码学习中总结出来的经验之谈&#xff0c;求逻辑自洽&#xff0c;不能百分百保证正确&#xff0c;有错误、未定义、不合适的内容请尽情指出&#xff01; 文章目录 1.源头2.排错3.原因4.解…

刷代码随想录有感(114):动态规划——最少数量的零钱换整

题干&#xff1a; 代码&#xff1a; class Solution { public:int coinChange(vector<int>& coins, int amount) {vector<int>dp(amount 1, INT_MAX);dp[0] 0;for(int i 0; i < coins.size(); i){for(int j coins[i]; j < amount; j){if(dp[j - coi…

《洛基第二季》:多元宇宙的奇幻之旅

在浩瀚无垠的影视宇宙中&#xff0c;有一部剧如璀璨星辰般耀眼&#xff0c;那就是备受期待的《洛基第二季》。该剧由贾斯汀本森和艾伦穆尔黑德执导&#xff0c;汤姆希德勒斯顿、索菲娅迪马蒂诺、欧文威尔逊等主演&#xff0c;于2023年10月上线。 这部剧延续了第一季的故事情节&…

红队内网攻防渗透:内网渗透之内网对抗:横向移动篇WinRS命令WinRM管理RDP终端密码喷射点CrackMapExec

红队内网攻防渗透 1. 内网横向移动1.1 内网横向移动方法分类1.2 WinRM&WinRS1.2.1 利用条件1.2.1.1 探针可用1.2.1.2 连接执行1.2.1.3 CS上线利用1.2.1.3.1 反向连接上线1.2.1.4 CS内置模块1.2.1.5 其他解决1.3 RDP1.3.1 探针连接1.3.2 连接执行1.3 CrackMapExec-密码喷射1…

AI智能时代:ChatGPT如何在金融市场发挥策略分析与预测能力?

文章目录 一、ChatGPT在金融策略制定中的深度应用客户需求分析与定制化策略市场动态跟踪与策略调整策略分析与优化 二、ChatGPT在算法交易中的深度应用自动交易策略制定交易执行与监控风险管理 三、未来展望《智能量化&#xff1a;ChatGPT在金融策略与算法交易中的实践》亮点内…

【C语言】算法:二分查找

当我们想在一个有序的序列里面查找一个数字的时候&#xff0c;通常会想到使用循环遍历&#xff0c;也就是下面这种方法&#xff1a; 比如我们想在下面的数组里面找到7&#xff1a; int main() {int num 7;int arr[10] { 1,2,3,4,5,6,7,8,9,10 };for (int i 0; i < size…

电商公司旺店通-金蝶云星空项目分享

项目背景 企业背景 某电商公司是一家专注于美容护肤产品的研发和销售的科技公司。公司在全平台拥有185家店铺&#xff0c;日发货量超过30万明细&#xff0c;展现出强大的业务规模和市场影响力。旗下品牌包括韩方五谷和维特丝&#xff0c;已经在市场上建立了良好的声誉和知名度…

什么是孪生素数猜想

什么是孪生素数猜想 素数p与素数p2有无穷多对 孪生素数的公式&#xff08;详见百度百科&#xff1a;孪生素数公式&#xff09; 利用素数的判定法则&#xff0c;可以得到以下的结论&#xff1a;“若自然数q与q2都不能被任何不大于的素数 整除&#xff0c;则q与q 2都是素数”…

智能优化算法改进策略之局部搜索算子(四)--梯度搜索法

2、仿真实验 以海洋捕食者算法&#xff08;MPA&#xff09;为基本算法。考察基于梯度搜索的改进海洋捕食者算法&#xff08;命名为GBSMPA&#xff09; vs. 海洋捕食者算法&#xff08;MPA&#xff09; 在Sphere函数上的比较 在Penalized1函数上的比较 在CEC2017-1上的比较 在C…

Adobe Acrobat 编辑器软件下载安装,Acrobat 轻松编辑和管理各种PDF文件

Adobe Acrobat&#xff0c;它凭借卓越的功能和丰富的工具&#xff0c;为用户提供了一个全面的解决方案&#xff0c;用于查看、创建、编辑和管理各种PDF文件。 作为一款专业的PDF阅读器&#xff0c;Adobe Acrobat能够轻松打开并展示各种格式的PDF文档&#xff0c;无论是文字、图…

文心智能体平台介绍和应用:制作你的智能体(运维小帮手)

这是我自己制作的智能体 大家可以了解一下&#xff01; 运维小帮手&#xff01;https://mbd.baidu.com/ma/s/tE19dqvr 文心智能体平台官网首页 点击跳转&#xff01;https://agents.baidu.com/ 什么是智能体平台&#xff1f; 文心智能体平台&#xff08;Wenxin Intelligen…