Linux环境中部署docker私有仓库Registry与远程访问详细流程

目录

前言

1. 部署Docker Registry

2. 本地测试推送镜像

3. Linux 安装cpolar

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

5. 公网远程推送Docker Registry

6. 固定Docker Registry公网地址


前言

作者简介: 懒大王敲代码,计算机专业应届生

       今天给大家聊聊Linux环境中部署docker私有仓库Registry与远程访问详细流程,希望大家能觉得实用!
欢迎大家点赞 👍 收藏 ⭐ 加关注哦!💖💖  

个人主页:

懒大王敲代码-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/weixin_58070962?type=blog

其他专栏:

技术分享专栏icon-default.png?t=N7T8http://t.csdnimg.cn/LVrbCjava专栏icon-default.png?t=N7T8http://t.csdnimg.cn/bw2Thubantu与C语言学习专栏icon-default.png?t=N7T8http://t.csdnimg.cn/A8yIivue3项目实战专栏icon-default.png?t=N7T8http://t.csdnimg.cn/vP2no内网穿透专栏icon-default.png?t=N7T8http://t.csdnimg.cn/GJZJA懒大王闲谈专栏icon-default.png?t=N7T8http://t.csdnimg.cn/KxzqY

本文主要介绍如何部署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官网地址: cpolar官网-安全的内网穿透工具 | 无需公网ip | 远程访问 | 搭建网站

  • 使用一键脚本安装命令

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

   关于爬虫技术实战案例解析,懒大王就先分享到这里了,如果你认为这篇文章对你有帮助,请给懒大王点个赞点个关注吧,如果发现什么问题,欢迎评论区留言!!💕💕      

结语

       关于Linux环境中部署docker私有仓库Registry与远程访问详细流程,懒大王就先分享到这里了,如果你认为这篇文章对你有帮助,请给懒大王点个赞点个关注吧,如果发现什么问题,欢迎评论区留言!!💕💕      

其他专栏:

技术分享专栏icon-default.png?t=N7T8http://t.csdnimg.cn/LVrbCjava专栏icon-default.png?t=N7T8http://t.csdnimg.cn/bw2Thubantu与C语言学习专栏icon-default.png?t=N7T8http://t.csdnimg.cn/A8yIivue3项目实战专栏icon-default.png?t=N7T8http://t.csdnimg.cn/vP2no内网穿透专栏icon-default.png?t=N7T8http://t.csdnimg.cn/GJZJA懒大王闲谈专栏icon-default.png?t=N7T8http://t.csdnimg.cn/KxzqY

 

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

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

相关文章

网络安全知识核心20要点

1、什么是SQL注入攻击 概述 攻击者在 HTTP 请求中注入恶意的 SQL 代码,服务器使用参数构建数据库 SQL 命令时,恶意SQL 被一起构造,并在数据库中执行。 注入方法 用户登录,输入用户名 lianggzone,密码‘ or ‘1’’…

揭秘Python的魔法:装饰器的超能力大揭秘 ‍♂️✨

文章目录 Python进阶之装饰器详解1. 引言装饰器的概念与意义装饰器在Python编程中的作用 2. 背景介绍2.1 函数作为对象2.2 高阶函数 3. 装饰器基础3.1 理解装饰器3.2 装饰器的工作原理 4. 带参数的装饰器4.1 为什么需要带参数4.2 实现带参数的装饰器使用函数包裹装饰器使用类实…

TypeScript-泛型

泛型(Generics) 指在定义接口,函数等类型的时候,不预先指定具体的类型,而在使用的时候再指定类型的一种特性,使用泛型可以复用类型并且让类型更加灵活 泛型接口-interface 语法:在 interface 接口类型的名称后面使用…

AI服务器连接解决方案领军企业Astera Labs宣布,将在台湾组建首个位于硅谷以外的Cloud-Scale Interop Lab

AI服务器连接解决方案领军企业Astera Labs宣布,将在台湾组建首个位于硅谷以外的Cloud-Scale Interop Lab,集结中国台湾制造商共同参与。据《工商时报》报道,Astera Labs将与台湾主要ODM客户紧密合作,预期广达、英业达、纬创资通、…

web前端的路径和Servlet注解开发

目录 在web前端的两种路径 绝对路径的两种写法 相对路径 相对路径进阶 使用注解开发Servlet 使用注解开发Servlet的注意事项 使用idea创建servlet模板 在web前端的两种路径 绝对路径的两种写法 1.带网络三要素 http://ip地址:端口号/资源路径 2.不带网络三要素 /资源路…

『哈哥赠书 - 53期』-『深入浅出 Spring Boot 3.x』

⭐️ 《深入浅出 Spring Boot 3.x》 ⭐️ 学习Spring Boot的必读之书 在 Java 后端开发领域,功能强大的 Spring 开源框架不仅是首选,也是事实上的标准。但由于 Spring 存在配置烦琐、部署不易、依赖管理困难等问题,因此基于 Spring 的快速开…

告别传统,拥抱未来——上门回收小程序引领变革

随着科技的飞速发展,我们生活的方方面面都在经历着前所未有的变革。在环保和可持续发展的背景下,传统的废品回收方式已经难以满足现代社会的需求。而上门回收小程序的出现,正以其便捷、高效的特点,引领着废品回收行业的变革。 一、…

【NLPl练习】Transformer起源与发展

Transformer总结 Transformer模型类别分为: 纯Encoder模型纯Decoder模型Encoder-Decoder模型 Transformer模型的本质是预训练语言模型,首先采用自监督学习的方式在大量生语料库上训练,无需人工标注。常用的预训练任务主要有以下两个&#xff…

力扣343 整数拆分 Java版本

文章目录 题目描述代码 题目描述 给定一个正整数 n ,将其拆分为 k 个 正整数 的和( k > 2 ),并使这些整数的乘积最大化。 返回 你可以获得的最大乘积 。 示例 1: 输入: n 2 输出: 1 解释: 2 1 1, 1 1 1。 示例 2: 输…

Leedcode69:x的平方根_Java解法

Problem: 69. x 的平方根 题目描述思路解题方法复杂度Code 题目描述 给你一个非负整数 x ,计算并返回 x 的 算术平方根 。 由于返回类型是整数,结果只保留 整数部分 ,小数部分将被 舍去 。 注意:不允许使用任何内置指数函数和…

HCIP-Datacom-ARST自选题库__OSPF单选【80道题】

1.OSPFV2是运行在IPV4网络的IGP,OSPFV3是运行在IPV6网络的ICP,OSPFV3与OSPFv2的报文类型相同,包括Hello报文、DD报文、LSR报文、LSU报文和LSAck报文。关于OSPFv3报文,以下哪个说法是正确的 OSPFv3使用报文头部的认证字段完成报文…

NVIDIA Jetson AGX Orin虚拟显示器安装

NVIDIA Jetson AGX Orin虚拟显示器安装 ​ 在orin上使用过程中。由于没有连接显示屏导致无法正常使用远程桌面工具进行代码调试。可使用虚拟显示器解决上述问题。 1、安装远程桌面软件并进行相关配置 ​ 安装远程桌面软件参考各个远程桌面软件官网介绍。 2、开启界面共享 …

【LeetCode】数组——双指针法

1 双指针法 1.1 介绍 双指针法是一种常用的算法技巧,通常用于处理数组或链表中的问题。它使用两个指针,通常一个从数组的开始位置遍历,另一个从数组的末尾位置开始遍历,根据问题的不同,这两个指针可以同时移动&#…

oracle rownum分页出现重复数据

oracle rownum分页出现重复数据的情况: 一般情况是分组的字段不唯一导致的 解决办法: 原始sql:(错误的) SELECT *FROM (SELECT a.*, ROWNUM rFROM hospital_inpatient_medication aWHERE TO_CHAR(discharge_date,YYYY-MM-DD HH24:MI:SS) BETWEEN 20…

抖音跳转微信卡片制作教程 小白也能搞

实测可以正常跳转,很牛逼,给大家分享一下~ 这是我做出来抖音发出去的效果,大家会制作了可以去卖钱,市场上一个这个卡片都要卖50-200,很不错的!! https://pan.baidu.com/s/1xPmGAWPcbAp7eXg7Dc…

温故而知新-秒杀项目篇【面试复习】

温故而知新-秒杀项目篇【面试复习】 前言版权推荐温故而知新-论坛项目篇【面试】秒杀项目中注册模块怎么实现的?秒杀项目中登录模块怎么实现的?秒杀项目中显示登录用户信息怎么实现的?SessionStorage是什么?为什么不用session而用token什么是…

骨位深间距小模具镶件如何走水路?3D打印让一切简单

在模具制造领域,骨位深且间距小的模具镶件由于结构复杂,传统加工方法难以制造出符合要求的冷却水路,导致模具在注塑过程中容易产生热量积聚,进而引发烫伤、缩孔等不良。然而,随着3D打印技术的飞速发展,这些…

uniapp Vue2钉钉h5开发pdf无法预览的问题

有两种方案 1.通过kkfile后端服务调用,实现,后端部署服务,前端传递网络地址pdf //KKFILE_URL 是后端服务地址 export function kkfilePreview(url) {// 修改kkfile文件预览,需要进行base64编码return KKFILE_URL /onlinePreview…

迭代器 增强for循环

迭代器原理 简单来说,迭代器就是一种可以访问集合的方式,就像一个游标或者指针,可以逐一查看集合(映射、列表)中的元素。 想象一下你有一张清单,上面列着你需要做的事情,但是你只能一次看一项。迭代器就像…

[蓝桥杯 2019 省 A] 糖果

一.题目 题目描述 糖果店的老板一共有 M 种口味的糖果出售。 为了方便描述,我们将 M 种口味编号 1∼M。 小明希望能品尝到所有口味的糖果。 遗憾的是老板并不单独出售糖果,而是 K 颗一包整包出售。 幸好糖果包装上注明了其中 K 颗糖果的口味&#…