DevOps工程师的远程利器:PortainerCE+cpolar让容器管理随时随地

基于立创EDA的8口全千兆POE交换机设计详解:RTL8370N芯片与90W大功率供电方案 本文详细解析了基于立创EDA设计的8口全千兆POE交换机方案,核心采用RTL8370N交换芯片与支持90W大功率供电的IEEE 802.3bt标准PD芯片。文章深入探讨了PSE/PD供电管理、电源架构设计、电路细节及关键散热方案,为DIY或学习POE交换机硬件设计提供了完整的开源实践指南。 阅读详情

前言

Portainer CE的核心价值在于它将复杂的容器操作转化为直观的图形化界面——无需记忆冗长的Docker命令,通过点击即可完成容器启停、日志查看、资源调整等操作。其多环境支持特性允许在单一控制台管理不同云厂商的容器服务,极大简化了混合云架构的运维复杂度。开源免费的定位更使其成为中小企业的理想选择。

作为资深DevOps工程师,我最欣赏它的批量操作功能。上周需要更新12个微服务容器镜像,通过Portainer的批量部署功能,全程不到5分钟完成,比传统命令行方式节省80%时间。但本地部署的限制曾让我困扰不已——周末在家收到容器告警,不得不远程连接公司VPN才能处理。

接入cpolar后,我的容器管理体验实现了质的飞跃。现在无论是在客户现场还是出差途中,只需打开手机浏览器就能访问Portainer控制台。上个月在机场处理生产环境故障,通过cpolar生成的固定地址,实时查看容器日志并重启服务,整个过程不到10分钟,同行客户惊叹"比我们的云管理平台还快"。

本篇文章介绍如何在Ubuntu中使用docker本地部署Portainer CE可视化管理工具,并结合cpolar实现公网远程管理容器和镜像。

接下来,讲解如何使用docker在本地Linux环境部署Portainer CE。

image.png

1. 本地安装Docker

本教程操作环境为Linux Ubuntu系统,在开始之前,我们需要先安装Docker。

在终端中执行一键安装脚本命令安装docker:

sudo curl -fsSL https://gitee.com/tech-shrimp/docker_installer/releases/download/latest/linux.sh | bash -s docker --mirror Aliyun

配置docker镜像源

在终端执行

sudo nano /etc/docker/daemon.json 

输入下列内容,保存退出。

{
    "registry-mirrors": [
        "https://docker.m.daocloud.io",
        "https://docker.1panel.live"
    ]
}

然后重新启动docker服务:

sudo systemctl restart docker

2. 本地部署Portainer CE

下载portainer-ce镜像,这里选择版本是latest版本。

sudo docker pull portainer/portainer-ce:latest

image.png

创建 Portainer Server 将用于存储其数据库的卷

sudo docker volume create portainer_data

下载并安装 Portainer Server 容器

sudo docker run -d -p 8000:8000 -p 9443:9443 --name portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce:2.21.2

image.png

Portainer Server 现已安装。您可以通过运行 来检查 Portainer Server 容器是否已启动:docker ps

image.png

现在安装已完成,您可以通过打开 Web 浏览器输入 https://localhost:9443 来登录您的 Portainer Server (注册登录账号)

image-20240930171818367

image-20240930171852357

image-20240930171917069

登录后,进入到 portainer-ce首页

image.png

点击左侧 Containers,检查宿主机内所有容器,会显示所有容器列表

0c9ebce6e91982205eb3c79a08d29cb.png

选择一个容器,选择图形化展示

image.png

image.png

点击 images,查看本地宿主机内所有容器镜像

206ed950e53638f342b82c8d456ef68.png

点击 Networks,查看docker容器网络情况

image.png

点击 Host,查看宿主机内系统信息

image.png

上面在本地Linux中成功部署了Portainer-CE,并局域网访问成功。如果想在公网远程管理Portainer-CE,就可以创建一个公网地址,这里我使用的是cpolar内网穿透,通过cpolar转发本地端口映射的http公网地址,我们可以很容易实现远程访问,而无需自己注册域名购买云服务器,可节省大量的资金。

3. 公网远程访问本地Portainer-CE

3.1 内网穿透工具安装

下面是安装cpolar步骤:

Cpolar官网地址: https://www.cpolar.com

使用一键脚本安装命令

sudo curl https://get.cpolar.sh | sh

安装完成后,执行下方命令查看cpolar服务状态:(如图所示即为正常启动)

sudo systemctl status cpolar

Cpolar安装和成功启动服务后,在浏览器上输入ubuntu主机IP加9200端口即:【http://localhost:9200】访问Cpolar管理界面,使用Cpolar官网注册的账号登录,登录后即可看到cpolar web 配置界面,接下来在web 界面配置即可:

image-20240801133735424

3.2 创建远程连接公网地址

登录cpolar web UI管理界面后,点击左侧仪表盘的隧道管理——创建隧道:

  • 隧道名称:可自定义,本例使用了: portainer 注意不要与已有的隧道名称重复

  • 协议:http

  • 本地地址:https://localhost:9443

  • 域名类型:随机域名

  • 地区:选择China Top

image.png

创建成功后,打开左侧在线隧道列表,可以看到刚刚通过创建隧道生成了两个公网地址,接下来就可以在其他电脑(异地)上,使用任意一个地址在浏览器中访问即可。

image.png

如下图所示,成功实现使用公网地址异地远程访问本地部署的Portainer

image.png

使用上面的cpolar https公网地址,在任意设备的浏览器进行访问,即可成功看到我们Portainer管理界面,这样一个利用公网地址可以进行远程访问的隧道就创建好了,隧道使用了cpolar的公网域名,无需自己购买云服务器,可节省大量资金。使用cpolar创建隧道即可发布到公网进行远程访问,新域名登录,可能需要重新登陆!

4. 固定Portainer CE公网地址

由于以上使用cpolar所创建的隧道使用的是随机公网地址,24小时内会随机变化,不利于长期远程访问。因此我们可以为其配置二级子域名,该地址为固定地址,不会随机变化。

注意需要将cpolar套餐升级至基础套餐或以上,且每个套餐对应的带宽不一样。【cpolar.cn已备案】

登录cpolar官网,点击左侧的预留,选择保留二级子域名,地区选择china vip top,然后设置一个二级子域名名称,填写备注信息,点击保留。

image.png

保留成功后复制保留的二级子域名地址:

image.png

登录cpolar web UI管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到所要配置的隧道,点击右侧的编辑。

image.png

修改隧道信息,将保留成功的二级子域名配置到隧道中

  • 域名类型:选择二级子域名

  • Sub Domain:填写保留成功的二级子域名

  • 地区: China VIP

点击更新

image.png

更新完成后,打开在线隧道列表,此时可以看到随机的公网地址已经发生变化,地址名称也变成了保留和固定的二级子域名名称。

image.png

最后,我们使用固定的公网地址访问 Portainer CE管理界面可以看到访问成功,一个永久不会变化的远程访问方式即设置好了。

image.png

image.png

接下来就可以随时随地进行公网访问管理Portainer CE了,把公网地址分享给身边的人,还可以方便团队协作。自己用的话,无需云服务器,还可以实现异地远程访问!以上就是如何在Linux Ubuntu系统本地安装Portainer CE的全部过程。

总结:PortainerCE与cpolar的协同,不仅解决了容器远程管理的技术难题,更创造了DevOps工作的全新可能。当可视化管理遇见穿透技术,运维人员终于可以摆脱办公地点束缚,实现"随时随地,掌控全局"的工作新常态。

TOGAF架构内容—TOGAF 内容框架和企业元模型 阅读详情

相关推荐

nacos3.1.0适配国产数据库

Nacos 3.1.0适配国产数据库指南 本文介绍了Nacos 3.1.0版本适配达梦数据库和人大金仓数据库的具体步骤。主要内容包括:添加达梦和人大金仓的JDBC驱动依赖,修改nacos-persistence模块的配置文件及相关Java类,以及打包和运行注意事项。文章特别指出3.1.0版本需要JDK17环境,并提供了解决常见问题的建议,如添加VM options配置和不同启动方式等。通过本文的配置指导,可以实现Nacos服务在国产数据库环境下的正常运行。

梦昼初的博客 1462

DevOps进阶

SonarQube 是开源代码质量管理平台,,支持 30+ 语言,对接 CI/CD 流水线提交即扫描。

fengkai4545的博客 128

别再只用CANape测数据了!手把手教你用ASAP2 Studio编辑A2L文件(附MAP文件更新避坑指南)

本文深入探讨ASAP2 Studio在ECU开发中的高阶应用,特别是如何利用其编辑A2L文件并同步更新MAP文件,提升测量标定效率。文章详细解析了ASAP2 Studio的双向同步能力、MAP文件更新全流程及变量管理技巧,帮助工程师避免常见错误,优化工作流程。

weixin_26833939的博客 506

DevOps 完整入门:瀑布、敏捷、CI/CD 核心概念通俗解析

敏捷开发(Agile Development) 的核心是*迭代开发*(Iterative Development) 与 *增量开发持续集成( Continuous integration , 简称 CI )指的是,频繁地(一天多次)将代码集成到主干。**持续集成的目的,就是让产品可以快速迭代,同时还能保持高质量。**它的核心措施是,代码集成到主干之前,必须通过自动化测试。只要有一个测试用例失败,就不能集成。

weixin_63581562的博客 524

完美解决LBP2900打印机安装驱动提示无法识别USB及连接错误等问题(附Win11全新安装支持及卸载方案)

LBP2900打印机虽然经典老旧,但在Win11上依然可以完美使用!许多网上教程都无视安装失败后的问题,在此分享一种全新、100%有效的方法来解决驱动连接错误和无法识别USB设备的问题。无论是新安装还是卸载重装,这个方法都适用。本文整合了通用驱动包,支持Win2000到Win11系统,操作简单,轻松摆脱安装困扰,享受无忧打印体验!

心开始の未来~的博客 2万+

Python抓取摄像头图像,进行AI识别(一)

本文介绍了如何用Python获取海康威视摄像头的图像并进行AI识别。主要内容包括:1)准备工作,包括摄像头IP设置和密码重置方法;2)使用Python的Requests库通过ISAPI接口获取实时图像;3)示例代码展示如何保存摄像头图像。整个过程为后续AI图像识别提供了基础,通过简单的Python代码即可实现专业监控设备的图像采集功能。

Hahafantuan的博客 1511

从瀑布到流水线:DevOps 入门与 GitLab + Jenkins + Docker 落地实践

先看清软件开发生命周期(SDLC)的全貌,再对比瀑布模型与敏捷开发,随后进入持续集成与 CI/CD 的机制内核;最后落到实操——在 GitLab、Jenkins、Docker 组成的四机实验环境里,走完源码托管、自动化构建、镜像封装与远程部署,直到参数化构建与版本回滚。概念与命令并重,既是入门地图,也是操作手册。

年轻的时候很穷,经过我多年的努力,终于不再年轻。 228

Silly Tavern酒馆ai角色卡与世界书导入超详细教程!

前几天,我在设置 Silly Tavern 的时候,想导入一个喜欢的角色卡,结果发现不少朋友其实已经下载好了角色资源,但却不知道怎么正确导入使用。这篇文章就作为一份完整的新手向教程,一步步教你如何在 Silly Tavern 中导入角色卡、世界书,并实现与 AI 角色的真实互动。如果你是第一次接触这个功能,建议先收藏慢慢看~点击菜单栏上的 图标,打开角色界面。初始状态下,你应该只看到默认角色 Seraphina。你可以先点击她的头像尝试聊天,也可以导入自己喜欢的角色。点击导入按钮,选择你下载好的角色卡(通

代码简单说 Vue、JAVA、PHP、Node.js 熟练运用,接口、架构、性能全搞定。 2万+

开源基准 CloudOpsBench 发布:AI 运维最大瓶颈在推理

开源基准 CloudOpsBench 1.0 包含 45 项 AWS 运维任务,测试中表现最好的 Claude Fable 5.1 仅解决 60%,研究团队称约 80% 的失败源于推理问题。

老孙正经胡说 184

基于Simulink实现电动汽车电机驱动系统的建模与仿真

通过上述步骤,我们成功实现了基于Simulink的电动汽车电机驱动系统的建模与仿真。该系统能够全面评估电机驱动系统的性能,验证控制策略的有效性,并通过优化设计提高车辆的动力性和效率。引入智能预测:结合人工智能技术,实现更智能的控制策略。扩展功能:增加对多种电机类型的支持,提升系统通用性。实验验证:将仿真模型应用于实际硬件,进行实验验证,评估其在实际工况下的表现。

xiaoheshang_123的博客 316

PCL点云库入门(第1讲)——PCL库简介和安装(Win10/11+VS2019+PCL 1.12.0)

PCL,全称为,即点云库,是一个专注于2D/3D图像和点云处理的大型开源项目。该项目最初由斯坦福大学的杰出计算机视觉专家Radu博士及其团队开发和维护,经过十余年的发展,目前(2024年12月)已更新至1.14.1版本。PCL点云库集成了众多尖端的点云处理算法,这些算法不仅包括基础的滤波、特征估计、表面重建、配准、模型拟合和分割等,还涵盖了更高级的功能,如点云数据的语义理解、场景解析以及动态环境下的实时处理。这些算法能够对含有噪声的点云数据进行有效过滤,去除异常值;

qq_36812406的博客 1万+

DevOps 入门实战:从理论到落地,GitLab+Jenkins 完成 CICD 流水线

本篇完整走完 DevOps 前置学习链路:理解 SDLC、瀑布、敏捷、CI/CD 理论;完成 Windows 端 SpringBoot 开发;搭建私有化 GitLab 代码仓库实现代码托管;部署 Jenkins 自动化平台,完成基础工具环境配置。后续可以基于这套环境,创建 Jenkins 流水线任务,拉取 GitLab 源码、Maven 编译打包,使用 Publish over SSH 插件,自动把 jar 包发布到 web 服务器,真正完成完整 CICD 自动化发布。

Wzh5452830的博客 246

Kappa函数:测量一致性并计算置信区间的R语言包

Kappa函数是一种常用的统计量,用于衡量两个评估者之间的一致性。在R语言中,有一个名为"vcd"的包提供了计算Kappa函数以及相应的置信区间的功能。本文将介绍如何使用"vcd"包来计算Kappa函数的值,并进一步计算置信区间。Kappa函数的值介于-1和1之间,值越接近1表示评估者之间的一致性越高,值越接近-1表示评估者之间的一致性越低,值接近0表示评估者之间的一致性接近于随机。通过以上步骤,我们成功地使用R语言中的"vcd"包计算了Kappa函数的值和置信区间。接下来,我们可以使用"vcd"包中的。

2301_79331230的博客 1874

DevOps入门-下篇-GitLab-Jenkins-Docker实战

打开demo_web项目 → 菜单VCS→Git→Push(或Remotes)→字段值NameoriginURLURL 直接从 GitLab 项目首页复制(Clone →),别手打,容易多斜杠。实践对应概念解决的问题GitLab 托管 + 分支管理版本控制代码唯一可信来源Jenkins 拉取并自动构建持续集成不再手工打包,问题早发现Maven 统一构建可重复构建谁打出来的包都一样Publish over SSH 自动推送持续交付部署不再是手工活Dockerfile 进仓库。

weixin_45488455的博客 622

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

DevOps入门-上篇-从SDLC到CICD

周五下午四点,你终于把功能写完,本地跑通了,打了个包丢给运维:“哥,帮忙上一下生产。半小时后,群里开始刷屏:启动报错、端口被占、数据库连不上、依赖版本不对、配置文件是测试环境的……你在本地明明跑得飞起。这不是你菜,这是"集成代码在你的机器上是对的,不代表它在别人的机器、在服务器上是对的。如何让"我这能跑"变成"哪都能跑",并且让这个过程一天发生几十次还不翻车?要回答这个问题,得先把软件是怎么被"生产"出来的这件事讲清楚。持续集成(Continuous Integration,简称CI。

weixin_45488455的博客 315

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

DevOps 入门实战(一):从 CI/CD 概念到 Jenkins 自动构建部署

本文主要介绍了在Windows开发机与三台CentOS虚拟机上,搭建基于GitLab私仓、Jenkins自动化构建与SSH部署的CI/CD流水线。通过Spring Boot项目本地验证后,配置GitLab代码仓库,利用Jenkins实现三次构建:首次拉取代码,二次Maven打包,三次通过SSH推送Jar包至目标机,并由Docker运行容器。全程覆盖代码提交、自动构建、远程部署全流程,实现“写代码→提交→自动部署”闭环,掌握DevOps核心实践。

tc2266的博客 364

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

技术决策者选项目管理工具:Gitee、Jira、Azure DevOps 与轻量工具的落地对比

对于研发型技术团队,选项目管理工具的第一判断标准不是功能清单长度,而是「需求到交付的链路能否在同一个数据层上跑通」——如果代码提交、任务看板、流水线状态分散在三套系统里,再多的协作功能也只是把割裂搬到了线上。据中国信通院 2024 年发布的《中国 DevOps & BizDevOps 现状调查报告》,国内企业在研发效能提升上的主要障碍集中在工具链割裂与度量口径不统一,这与选型阶段忽略链路闭环直接相关。

2602_96414767的博客 303

devops入门

敏捷开发(Agile Development) 的核心是*迭代开发*(Iterative Development) 与 *增量开发持续集成( Continuous integration , 简称 CI )指的是,频繁地(一天多次)将代码集成到主干。**持续集成的目的,就是让产品可以快速迭代,同时还能保持高质量。**它的核心措施是,代码集成到主干之前,必须通过自动化测试。只要有一个测试用例失败,就不能集成。

2301_82263835的博客 176

DevOps 入门

Jenkins 基于 Java 开发,开源 CI 服务器;可以实现自动化流水线。组成Master 主节点:web 界面,管理任务、调度;Agent 代理节点:执行构建任务,分布式构建,减轻 master 压力。触发方式:代码提交 webhook 钩子触发、定时触发、手动点击构建。两种流水线写法自由风格项目:图形页面配置,适合简单任务,难以版本化;Pipeline 流水线(Jenkinsfile):代码式流水线,Groovy 语法,可以存放在 Git 仓库,

fengkai4545的博客 261

AI 如何替代传统 DevOps。从应用发布到故障恢复的实操。

代码合并了,还得构建、部署,再检查上线后的功能。出了问题,要查日志和配置,决定继续修复还是先退回旧版本。这些步骤可以自动化,但应用依赖怎样配置、发布失败从哪里查起,仍然需要有人处理。Agent 已经能理解项目代码,接上应用平台以后,也可以参与后面的部署和维护。这次用开源 Rainbond 和 RainSkills 部署了一个带数据库的留言板,从开发环境发布到生产,更新 V2,再演练配置故障和恢复 V1。过程中碰到了工具入口缺失,也碰到了操作记录成功、运行实例却没切换的情况。

qq_45799465的博客 231

DevOps 入门实操|SDLC、敏捷、CICD,GitLab+Jenkins+Docker 完整环境搭建

博客笔记:从理论概念到 Windows 开发环境,再到 Linux 服务器部署 GitLab、Jenkins,完整实操记录,包含常见踩坑。

Wzh5452830的博客 239

DevOps与代码审计SonarQube:生产环境能力与实践

本文系统阐述了DevOps与SonarQube在生产环境中的协同实践。DevOps通过CI/CD流水线实现高效、可追溯的交付闭环,而SonarQube作为DevSecOps核心工具,通过静态代码分析与质量门禁,实现安全左移,拦截高危漏洞与劣质代码。二者结合,构建自动化、可度量、可审计的生产体系,支撑云原生环境下高频迭代与高质量交付,是现代软件工程的标配能力。

weixin_74738117的博客 142

2026 中国企业 DevOps 平台选型:从工具链到一体化平台的决策框架

在研发管理语境下,一体化 DevOps 平台通常指将需求管理、项目管理、代码托管、CI/CD 流水线、测试管理、制品库与效能度量等环节整合为统一数据层与操作界面的解决方案。其核心价值不在于功能数量的堆叠,而在于消除工具割裂带来的协作损耗与数据孤岛。据 Gitee 2025 年公开的客户案例,厦门阳光技术中心在迁移至 Gitee 企业版之前,需求管理、项目管理、缺陷管理分散在不同平台上,导致学习成本高、数据重复录入且易错位;

cakeism的博客 128

docker -- Jenkins容器内使用宿主机的docker环境

我的Jenkins是直接用docker启动的,但是在Jenkins构建流水线的时候,需要使用到docker环境,因为容器内都是最基本的linux环境,要在容器内再弄一个docker环境就很麻烦,所以想办法直接共享宿主机的docker环境。可以看到没有docker用户组,其实这个988就是docker用户组,因为容器内没有docker这个用户组,所以就直接显示docker用户组的id 988。进入Jenkins容器,935e9371b59e 是容器id,进入到容器后,你会发现你的用户为jenkins。

DGH2430284817的博客 196

Docker私有仓库搭建与实战指南

Docker仓库是集中存储与分发镜像的平台,分为公共(如DockerHub)和私有仓库。DockerHub提供海量官方及社区镜像,支持版本管理与搜索,便于快速部署应用。通过打标签、登录认证后可推送/拉取镜像。为保障安全,企业可自建私有仓库,使用原生registry或功能更完善的Harbor。Harbor支持HTTPS、RBAC权限控制、图形化界面、镜像复制与审计日志,适合生产环境。配置域名解析、证书信任及账号认证后,实现安全高效的镜像管理。

2301_80092853的博客 455

Docker系列---Dockerfile镜像文件

从零构建属于自己的 Docker 镜像

努力向上的大学生一枚⭐ 144
上一篇: 构建高效的数据清理工具箱:五个实用 Python 函数示例
下一篇: 使用 TPOT 实现 AutoML:从入门到模型部署
秋说
秋说 优质创作者: 编程框架、信息安全技术领域 优质创作者: 编程框架、信息安全技术领域
博客等级 码龄4年 3万+粉丝 1906原创
评论 6
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

秋说

感谢打赏

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值