轻松驾驭Docker!Windows Docker Desktop部署Portainer全攻略

news/2025/2/26 0:56:31/文章来源:https://www.cnblogs.com/ccdm/p/18737589

轻松驾驭Docker!Windows Docker Desktop部署Portainer全攻略

一、引言

在当今的软件开发领域,Docker 已经成为构建、部署和运行应用的标准之一。它通过容器化技术使得开发者可以轻松地打包应用程序及其依赖,并确保它们可以在任何环境中一致地运行。

为了更好地管理和监控这些容器,Portainer 作为一款开源且轻量级的 Docker 管理工具应运而生。通过Portainer,你可以轻松地管理容器、镜像、网络等。本文将指导你如何在Docker Desktop中安装和配置Portainer,帮助你更高效地管理Docker容器。

image

二、环境要求

在开始之前,请确保你的系统满足以下要求:

  • 操作系统:Windows 10 或更高版本

  • 至少 4GB 的内存(建议 8GB 或以上)

  • 启用 Hyper-V 或 WSL 2(Windows Subsystem for Linux 2)

  • Docker:已经安装并运行Docker Desktop(具体安装,可参考之前文章:

    Windows安装Docker Desktop,详细步骤 https://blog.csdn.net/qq_17153885/article/details/141337873?spm=1001.2014.3001.5501)

三、安装 Portainer

3.1 拉取镜像

Portainer 提供社区版(CE)和企业版(EE),此处使用 社区版

执行以下命令拉取最新镜像:

docker pull portainer/portainer-ce:latest

image

image

3.2 创建数据卷

创建一个名为 portainer_data​ 的数据卷,用于存储 Portainer 的持久化数据:

docker volume create portainer_data

image

这将创建一个名为portainer_data​的数据卷。

3.3 运行Portainer容器

接下来,我们将运行Portainer容器,并将其映射到主机的9000端口。执行以下命令:

docker run -d -p 9000:9000 --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data --name prtainer portainer/portainer-ce

这个命令将会:

  • -d​:在后台运行容器;
  • -p 9000:9000​:将容器的9000端口映射到主机的9000端口;
  • --restart=always​:容器退出时总是自动重启;
  • -v /var/run/docker.sock:/var/run/docker.sock​:共享Docker守护进程的Unix套接字,以便Portainer可以访问Docker API;
  • -v portainer_data:/data​:将前面创建的数据卷portainer_data​挂载到容器的/data​目录,以保存配置和数据;
  • --name prtainer​:为容器指定一个名称(这里使用prtainer​作为名称);
  • portainer/portainer-ce​:使用Portainer镜像创建容器。

image

image

3.4 验证安装

运行以下命令以查看 Portainer 容器是否正在运行:

docker ps

image

四、访问 Portainer 控制台

4.1 打开浏览器,访问

http://localhost:9000
  • 若在远程服务器安装,将 localhost​ 替换为服务器 IP。

image

4.2 初始化设置

  • 创建管理员账户:输入用户名和密码。

image

  • 连接本地 Docker 环境
    选择 "Get Started""Local" (已自动检测到 Docker Desktop 环境)。

image

image

五、使用 Portainer 管理 Docker

Portainer 的主要功能如下:

  • 仪表盘:查看容器、镜像、卷等资源状态。
  • 容器管理:启动/停止容器、查看日志、进入终端等。
  • 镜像管理:拉取/删除镜像、构建自定义镜像。
  • 网络与存储:配置网络、管理数据卷。

5.1 Docker容器概览

选择local选项卡后本地docker详细信息展示

image

5.2 管理容器(Containers)

查看运行容器

在步入local,我们就可以按需管理容器、镜像、网络等配置信息。不妨点击containers查看我们服务器中当前运行的docker容器。

image

image

image

image

启动/停止容器

image

查看容器日志

image

image

进入容器终端

image

image

image

容器升级

进入某个容器的详情,点击编辑(Edit):

image

image

在编辑页面,更改镜像名称:

image

注:如果想要更新容器到最新版,只需要添加latest即可;如果是更新到特别版本,请在尾部添加特定版本号,这些在docker hub上均可找到对应的信息。

然后点击部署容器即可:

image

5.3 管理镜像(Images)

查看镜像列表:点击左侧菜单栏的“镜像”选项,你将看到当前Docker环境中所有镜像的列表。

image

搜索和拉取镜像:在镜像页面,点击右上角的“拉取镜像”按钮,输入镜像名称和标签,然后点击“拉取镜像”按钮,即可从Docker Hub或其他镜像仓库拉取镜像。

image

删除镜像:在镜像列表中,点击每个镜像右侧的垃圾桶图标,即可删除镜像。

image

5.4 管理网络(Networks)

查看网络列表:点击左侧菜单栏的“网络”选项,你将看到当前Docker环境中所有网络的列表。

image

创建网络:在网络页面,点击右上角的“创建网络”按钮,选择网络类型(桥接、主机或覆盖),输入网络名称,然后点击“创建网络”按钮,即可创建新的网络。

删除网络:在网络列表中,点击每个网络右侧的垃圾桶图标,即可删除网络。

5.5 管理堆栈(Stacks)

查看堆栈列表:点击左侧菜单栏的“堆栈”选项,你将看到当前Docker环境中所有堆栈的列表。堆栈是一组相关联的服务,使用Docker Compose文件定义,以后我们也会用该功能带着大家做一些很酷的事情。

image

创建堆栈:在堆栈页面,点击右上角的“创建堆栈”按钮,输入堆栈名称,选择部署方式(Web编辑器、上传Compose文件或从URL部署),然后点击“创建堆栈”按钮,即可部署新的堆栈。

更新堆栈:在堆栈列表中,点击堆栈名称进入堆栈详情页面。在此页面,你可以修改Docker Compose文件,然后点击“更新堆栈”按钮,以便应用新的配置。

删除堆栈:在堆栈列表中,点击每个堆栈右侧的垃圾桶图标,即可删除堆栈。

结束语

通过 Portainer 的图形化界面,Windows 用户无需依赖繁琐的命令行即可轻松驾驭 Docker 容器。无论是部署开发环境、监控资源状态,还是管理镜像与网络,Portainer 都能将复杂操作简化为直观的点击交互。它的多用户权限控制和预置应用模板,更是为团队协作与生产部署提供了可靠保障。

作为 Docker Desktop 的最佳搭档,Portainer 不仅能提升开发效率,还能帮助新手快速理解容器化技术的核心逻辑。现在就动手安装体验吧!探索 Portainer 的更多高阶功能(如 Kubernetes 集成或自定义模板),可关注我们的后续教程,让容器管理成为你技术栈中的又一利器!

点击关注收藏

本文由博客一文多发平台 OpenWrite 发布!

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

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

相关文章

部署 VS2022 驱动开发环境-解决无法编译驱动的问题

使用 VS2022 安装驱动开发环境,创建默认的驱动项目是无法直接编译出驱动的文件的,需要使用 NuGet 给项目安装【Microsoft.Windows.WDK.x64】1、下载安装 VS2022(最低支持的 WDK 版本:10.0.26100) 下载地址:https://visualstudio.microsoft.com/zh-hans/downloads 1.1 组件选…

web开发 辅助学习管理系统开发日记 day2

Q1:遇到的api返回结果数据封装的问题,在老版本的springboot中当实现类的类名和数据库中的类名不一致的是不会自动封装返回,因此返回结果值会显示null,但是在新版貌似已经会自动识别,所以我没有遇到该问题,如果遇到用手动结果映射的方法解决。Q2:在进行前后端联桥时,前端服…

右值引用和移动语义

右值引用(Rvalue reference)和移动语义(Move semantics) 左值(lvalue)和右值(rvalue)左值(也称为 locator value)是一个可以被修改的存储位置,指向内存中的某个位置 例子:变量、数组元素、解引用指针等判断左值的方法是:能够获得这个表达式的引用 或者取地址右值 …

【vulhub】redis 4-unacc (redis未授权访问)

渗透环境 攻击机: IP: 192.168.66.130(Kali) 漏洞收录于:vulhub/redis/4-unacc 涉及知识点:redis未授权访问 影响版本:redis 版本 < 6.x 漏洞的产生条件有以下两点:Redis绑定在0.0.0.0:6379,且没有进行添加防火墙规则避免其他非信任来源ip访问等相关安全策略,直接…

再论支付账务

支付账务是金融领域中复杂且关键的一环,涉及资金流动、风险控制和业务效率等多个方面。本文从支付结算的专业视角出发,深入剖析了支付账务的核心逻辑,包括会计科目设置、对账结算流程以及账务核算的关键要点。学习账务的时候你是否经常有这些疑问“待结算和待清算是什么?为…

分享[清华大学DeepSeek教程全家桶]下载地址

干货分享,最新整理的清华大学DeepSeek教程全家桶,内容如下:内容展示下载地址🎁🎁 文末福利,后台回复[603]获取下载地址 📢📢 喜欢这篇文章?欢迎大家✨关注 ❤️点赞 ➡️转发 分享给那些需要的朋友!如果认为此文对您有帮助,别忘了支持一下哦!声明:本博客原创文…

求二叉搜索树的第 K 小的值

题目:一个二叉搜索树,求其中的第K小的节点值。如下图,第3小的节点是4什么是二叉树:是一棵树   每个节点最多能有 2 个字节点。数据结构如下:{value, left,right}interface ITreeNode {value: number // 或其它类型left?: ITreeNoderight?:ITreeNode }上图中的二叉树结…

百万架构师第四十四课:Nginx:Nginx 的扩展-OpenRestry|JavaGuide

百万架构师系列文章阅读体验感更佳 原文链接:https://javaguide.net 公众号:不止极客 Nginx 的扩展-OpenRestry 课程目标Nginx 进程模型简介Nginx 的高可用方案OpenResty 安装及使用什么是 API 网关?OpenResty 实现灰度发布功能Nginx 进程模型简介 多进程TomcatBIO NIO AION…

不用 ORM 会发生什么?

要弄清一个事物带来了什么,有种办法就是在场景中去掉它,当我们不使用 ORM 开发项目,需要补齐哪些能力,以表格形式列举要补齐的功能点和意义。我们仅能通过 SQL语句和数据库交互,在采用 ORM 项目开发的项目有时出于性能、数据库表达限制的原因而直接编写 SQL 语句,在脱离 …

事务中无法切换数据源?DataSourceSwitchInvoker:轻松实现多数据源切换执行工具类

背景: 在有标注为@Transactional的类或公共方法中(传播特性,如:NOT_SUPPORTED、SUPPORTS、REQUIRED【默认值】、REQUIRES_NEW)执行数据源切换可能不成功(比如:主从数据源切换,多数据源切换等,均会发现切换不成功,或“偶尔又切换成功”),导致本应该需要查主库却查了…

Java基础05(常用类)

匿名内部类 Object类 包装类 String类 BigDecimal类 Date类(特定时间)Calendar类(日历)SimpleDateFormat类(格式化时间)System类(系统类)Java基础05(常用类) 内部类 成员内部类在类的内部定义,与实例变量、实例方法同级别的类外部类的一个实例部分,创建内部类对象…

mysql表字段varchar(10)和varchar(255)测试文件占用

前言全局说明一、说明 1.1 环境: Windows 11 家庭版 23H2 22631.3737 MySQL: 服务器版本: 5.6.34 - MySQL Community Server (GPL) Navicat for MySQL: 10.1.71.2 测试样本 两个字段: id字段是 1~10位不等长度的随机数; num字段是 11~25位不等的随机数字;为了更好模拟实际使…