CentOS7安装内网穿透实现远程推送镜像到本地Docker Registry

news2024/11/18 1:48:15

文章目录

    • 前言
    • 1. 部署Docker Registry
    • 2. 本地测试推送镜像
    • 3. Linux 安装cpolar
    • 4. 配置Docker Registry公网访问地址
    • 5. 公网远程推送Docker Registry
    • 6. 固定Docker Registry公网地址

前言

本文主要介绍如何部署Docker Registry 本地镜像仓库,简单几步结合cpolar内网穿透工具实现远程pull or push (拉取和推送)镜像,不受本地局域网限制!

1. 部署Docker Registry

使用官网安装方式,docker命令一键启动,该命令启动一个registry的容器,版本是2,挂载宿主机端口是5000端口,挂载后,5000端口就是我们连接镜像仓库的本地端口

docker run -d -p 5000:5000 --name registry registry:2

执行后,输入docker ps ,我们可以看到运行的容器

2. 本地测试推送镜像

Docker Registry 运行正常后,本地测试推送一个镜像到Registry里面,这边测试把本地mysql镜像推送:

给镜像加上标签

docker image tag mysql localhost:5000/myfirstimage

推送

docker push localhost:5000/myfirstimage

可以看到推送成功,本地推送镜像到Docker Registry表示成功,下面安装cpolar 内网穿透工具,实现远程推送

3. Linux 安装cpolar

上面我们安装成功了Docker Registry本地镜像库,下面我们在Linux安装cpolar内网穿透工具,通过cpolar 转发本地端口映射的http公网地址,我们可以很容易实现远程连接,而无需自己注册域名购买云服务器.下面是安装cpolar步骤

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

  • 使用一键脚本安装命令
curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash
  • 向系统添加服务
sudo systemctl enable cpolar
  • 启动cpolar服务
sudo systemctl start cpolar

cpolar安装成功后,在外部浏览器上访问Linux 的9200端口即:【http://局域网ip:9200】,使用cpolar账号登录,登录后即可看到cpolar web 配置界面,结下来在web 管理界面配置即可

4. 配置Docker Registry公网访问地址

点击左侧仪表盘的隧道管理——创建隧道,创建一个Docker Registry的http cpolar 公网地址隧道!

  • 隧道名称:可自定义命名,注意不要与已有的隧道名称重复
  • 协议:选择http
  • 本地地址:5000
  • 域名类型:免费选择随机域名
  • 地区:选择China vip

点击创建

image-20230920140230036

隧道创建成功后,点击左侧的状态——在线隧道列表,查看所生成的公网访问地址,有两种访问方式,一种是http 和https

image-20230920140536614

5. 公网远程推送Docker Registry

Docker Registry需要使用https进行推送,cpolar域名中默认支持https方式访问,所以更加方便,也无需我们设置其他.

首先标记镜像,然后推送,注意,https://协议名称不需要输入,可以看到,推送成功了,这样一个公网地址远程连接就设置好了!

image-20230920143908566

同样拉取也是可以的

image-20230920144311368

6. 固定Docker Registry公网地址

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

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

登录cpolar官网,点击左侧的预留,选择保留二级子域名,设置一个二级子域名名称,点击保留,保留成功后复制保留的二级子域名名称

image-20230920144725353

保留成功后复制保留成功的二级子域名的名称

image-20230920144830077

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

image-20230920150527018

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

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

点击更新(注意,点击一次更新即可,不需要重复提交)

image-20230920150711591

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

再次测试使用固定地址进行远程,可以看到成功了,这样一个固定且永久不变的公网地址就设置好了

image-20230920155453247

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

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

相关文章

顶顶通实时质检系统-黑名单拦截功能配置流程

文章目录 前言联系我们配置流程一、黑名单导入二、白名单导入三、外部黑名单四、靓号规则五、创建拦截规则六、拦截条件七、功能配置 拦截记录与统计拦截记录拦截统计 前言 上篇文章讲解了顶顶通实时质检系统黑名单的功能介绍,本篇文章主要讲解顶顶通黑名单拦截功能…

C++入门:从C语言到C++的过渡(1)

目录 1.什么是C 2.C的标准库 3.命名空间 3.1为什么要存在命名空间 3.2命名空间的定义 3.3命名空间的使用 3.3.1域作用限定符 3.3.2using关键字引入某个成员 3.3.3using关键字引入命名空间名称 3.4命名空间的嵌套 3.5命名空间的合并 4.C中的输入与输出 1.什么是C C&am…

Ansible自动化运维中的file文件模块模块应用详解

作者主页:点击! Ansible专栏:点击! 创作时间:2024年5月21日15点21分 💯趣站推荐💯 前些天发现了一个巨牛的🤖人工智能学习网站,通俗易懂,风趣幽默&#xf…

jmeter线程组(下篇)

线程组 线程组作为JMeter测试计划的核心组件之一,对于模拟并发用户的行为至关重要。线程组元件是整个测试计划的入口,所有的取样器和控制器必须放置在线程组下。 可以将线程组视为一个虚拟用户池,其中每个线程可被理解为一个虚拟用户&#x…

记录一次IDEA升级版本导致Lombok注解失效问题

IDEA升级导致Lombok注解失效问题 环境 我本机项目原来的运行环境和软件版本: IDEA 2021JDK 1.8Maven 3.5.4springboot 2.2.6.RELEASEspring-cloud Hoxton.SR9 为了体验更好我就把IDEA版本从2021.2升级到了2024.1版本,反正现在是有最新版本我就一直在…

SpringBoot2.0.x旧版集成Swagger UI报错Unable to infer base url...解决办法

一、问题描述 1.1项目背景 SpringBoot2.0.9的旧版项目维护开发,集成Swagger-ui2.9.2无法访问的问题。不用想啊,这种老项目是各种过滤器拦截器的配置,访问不到,肯定是它们在作妖。懂得都懂啊,这里交给大家一个排错的办…

企业防泄密软件有哪些,哪个排名最好

机密数据的泄密对于企业而言,已成为最大的信息安全威胁之一。近年来企业面对的最大威胁来自于内部,以利益为出发点的互联网信息犯罪及案件,在世界各地不断传出,因此,信息保护与管控将逐渐成为企业信息安全重点部署项目…

解决arduino安装stm32duino开发板库时下载慢下载不了的问题

解决arduino安装stm32duino开发板库时下载慢下载不了的问题,安装其他开发板也可以使用类似的方法。 在利用arduino进行stm32开发的时候,需要安装对stm32开发板支持的库,但是正常情况下,由于网络问题,安装的时候容易出…

双边滤波去雾算法

目录 1. 简介 2. 步骤 3. 优点 4. 代码 5. 运行结果 1. 简介 本文介绍了双边滤波图像去雾算法,旨在消除雾霾对图像质量的影响,能够保留边缘信息并去除噪声,有效提高图像的清晰度和对比度。双边滤波(Bilateral Filtering&…

【Java】全套云HIS(医院信息管理系统)可对接医保 采用云端SaaS模式部署

【Java】全套云HIS(医院信息管理系统)可对接医保 采用云端SaaS模式部署 SaaS 模式的云 HIS 更适用于基层医疗机构,而传统的 HIS 已经在大中型医疗机构大规模应用。过去,国内的大中型医疗机构投入了大量的资金来进行信息化系统建设…

esp32(8266)如何在platformio中上传文件到单片机

本来认为这是基础内容,不用我来介绍,结果,在个人的单片机字库开源项目 GitHub - StarCompute/tftziku: 这是一个通过单片机在各种屏幕上显示中文的解决方案 中有两个人问到了,就特别来说明一下: 在platformio中新建一…

指针数组与数组指针的理解

typedef struct vexnode {int key;struct arcnode *next; }vexnode, adjlist[MVNUM]; void init(adjlist *list); void init(adjlist *list) {for(size_t i 0; i < MVNUM; i){list[i].key i;list[i].next NULL;} }上述代码编译的时候没有报错&#xff0c;但是运行的时候&…

爱因斯坦CG大揭秘:从“纸片人”到“数字巨星”

AMV BBDO和Smart Energy GB携手&#xff0c;他们不仅是为了推广一个产品&#xff0c;更是为了传达一种理念。他们委托了业界翘楚The Mill&#xff0c;以精湛的技术与创意&#xff0c;打造了一个超越现实的数字形象——爱因斯坦。 这个逼真的CG形象&#xff0c;不仅是对科学巨匠…

python写页面自动截图

from selenium import webdriver def take_screenshot(url, file_path):driver webdriver.Chrome()driver.get(url)driver.save_screenshot(file_path)driver.quit() if __name__ __main__:take_screenshot(http://baidu.com, D:\桌面\wang.png)要安装selenium还要安装google…

Java编程语言,使用自定义二元组对象替代map集合实现Key-Value格式的数据存储

一、背景 url请求地址&#xff0c;后面使用&把多个请求参数拼接起来&#xff0c;例如&#xff1a;?p1v1&p2v2&p3v3 它们的key分别是p1/p2/p3&#xff0c;对应的value分别是v1/v2/v3。 也许很多人都会通过map集合来存储&#xff0c;算比较通用的做法了&#xff1…

「Safari浏览器使用new Date() 显示NAN」

一、问题描述 &#x1f951; &#x1f914;️ 项目中用 new Date&#xff08;&#xff09;展示时间&#xff0c;在谷歌浏览器上显示正常&#xff0c;但是在Sarfari浏览器上显示NAN 1、代码部分 &#x1f353;&#x1f353;&#x1f353;&#x1f353; 2、Chrome浏览器 &#…

Dijkstra算法求最短路径 c++

目录 【问题背景】 【相关知识】 【算法思想】 【算法实现】 【伪代码】 【输入输出】 【代码】 【问题背景】 出门旅游&#xff0c;有些城市之间有公路&#xff0c;有些城市之间则没有&#xff0c;如下图。为了节省经费以及方便计划旅程&#xff0c;希望在出发之前知道…

集合、Collection接口特点和常用方法

1、集合介绍 对于保存多个数据使用的是数组&#xff0c;那么数组有不足的地方。比如&#xff0c; 长度开始时必须指定&#xff0c;而且一旦制定&#xff0c;不能更改。 保存的必须为同一类型的元素。 使用数组进行增加/删除元素的示意代码&#xff0c;也就是比较麻烦。 为…

必应bing国内广告开户首充和开户费是多少?

微软必应Bing作为国内领先的搜索引擎之一&#xff0c;其广告平台凭借其精准的投放、高效的数据分析和广泛的用户覆盖&#xff0c;已成为众多企业的首选。 根据最新政策&#xff0c;2024年必应Bing国内广告开户预充值金额设定为1万元人民币起。这一调整旨在确保广告主在账户初始…

奥德彪的幸福VS码农的幸福

奥德彪的幸福 非洲国家布隆迪是一个全球最不发达国家之一&#xff0c;大部分居民以农业为生&#xff0c;其中包括香蕉&#xff0c;人们拿香蕉用来做饭也用来酿酒。 香蕉产地距离布隆迪首都布琼布拉很远&#xff0c;而这个国家又缺乏规模化的物流企业&#xff0c;于是就诞生了…