docker—私有仓库搭建
docker—私有仓库搭建
HTTP
部署
docker run -d \-p 5000:5000 \--restart=always \--name registry \-v /opt/data/registry:/var/lib/registry \registry:2
- 使用官方的
registry 镜像来启动私有仓库。默认情况下,仓库会被创建在容器的/var/lib/registry 目录下。你可以通过-v 参数来将镜像文件存放在本地的指定路径,当然你也可以选择其它本地路径,上面的只是一个示例。
使用
-
配置非HTTPS方式推送镜像
cat <<EOF | tee /etc/docker/daemon.json {"registry-mirrors": ["https://hub-mirror.c.163.com","https://mirror.baidubce.com"],"insecure-registries": ["your_ip_addr:5000"] } EOFsystemctl daemon-reload systemctl restart docker -
push and pull
docker tag $image $registry_host_address:5000/$image docker push $registry_host_address:5000/$image docker pull $registry_host_address:5000/$image -
check images
curl your_ip_address:5000/v2/_catalog
HTTPS
部署
-
registry_name
export registry_name=registry.domain.local -
生成证书
sudo -E mkdir -p /opt/registry/certs/ sudo -E openssl req \-newkey rsa:4096 -nodes -sha256 -keyout /opt/registry/certs/domain.key \-subj "/CN=${registry_name}" \-addext "subjectAltName = DNS:${registry_name}" \-x509 -days 365 -out /opt/registry/certs/domain.crt -
deploy registry
docker run -d \--restart=always \--name registry \-v /opt/registry/certs:/certs \-e REGISTRY_HTTP_ADDR=0.0.0.0:443 \-e REGISTRY_HTTP_TLS_CERTIFICATE=/certs/domain.crt \-e REGISTRY_HTTP_TLS_KEY=/certs/domain.key \-p 443:443 \registry:2 -
add certificate to host trust chain
-
任何需要访问registry的主机都需要配置
-
cat /etc/os-release -
case "ubuntu"|"debian"
sudo cp /opt/registry/certs/domain.crt /usr/local/share/ca-certificates/$registry_name.crt sudo update-ca-certificates -
case "centos"|"fedora"|"alinux"
sudo cat /opt/registry/certs/domain.crt >> /etc/pki/ca-trust/extracted/openssl/ca-bundle.trust.crt cp /opt/registry/certs/domain.crt /etc/pki/ca-trust/source/anchors/ sudo update-ca-trust -
case "rhel"
# https://access.redhat.com/solutions/3220561 sudo cp /opt/registry/certs/domain.crt /etc/pki/ca-trust/source/anchors/ sudo update-ca-trust extract cd /etc/pki/tls/certs/ && sudo openssl x509 -in ca-bundle.crt -text -noout -
case others, Please manual add registry certificates to host trust chain.
-
-
Append the entry to allow ip-address resolved to the registry name
任何需要访问registry的主机都需要配置
registry_ip=`hostname -I | awk '{print $1}'` echo "$registry_ip $registry_name" | sudo tee -a /etc/hosts -
Verifiy registry service works
export no_proxy=$no_proxy,$registry_name if ! curl https://$registry_name/v2/_catalog ; thenif ! nc -zv $registry_name 443 ; thenecho "ERROR: failed to connect to 443 port "fiecho "ERROR: registry service is not ready"exit 1 fi
使用
push and pull
docker tag $image $registry_address/$image
docker push $registry_address/$image
docker pull $registry_address/$image
注意:
-
push的时候,需要把docker仓库设置成insecure-registries -
pull时不需要设置
注意
镜像拉取
docker pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/registry:2
docker tag swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/registry:2 docker.io/registry:2
相关文章:
docker—私有仓库搭建
docker—私有仓库搭建 HTTP 部署 docker run -d \-p 5000:5000 \--restartalways \--name registry \-v /opt/data/registry:/var/lib/registry \registry:2使用官方的 registry 镜像来启动私有仓库。默认情况下,仓库会被创建在容器的 /var/lib/registry 目录…...
【SpringAOP】深入浅出SpringAOP从原理到源码
AOP对象是如何创建的 对于熟悉Spring IOC流程源码的同学来说,一定了解bean的整个生命周期,也就是从实例化、属性填充、初始化三个过程。那么对于Bean 工厂来说,是如何保证需要创建代理的对象创建代理的呢。 从图中可以看到,本质…...
Java 从查询超时到性能提升 (实战讲解)
目录 1. 问题所示2. 原理分析3. 解决方法3.1 代码优化3.2 索引优化3.3 删数据 1. 问题所示 查询返回速度慢,导致前端页面无数据显示 前端和后端均未报错,但后端未能在合理时间内返回结果到前端 后端没有报错日志 2. 原理分析 单独分析代码中的对算法…...
《C 语言携手 PaddlePaddle C++ API:开启深度学习开发新征程》
在深度学习领域,PaddlePaddle 作为一款强大的深度学习框架,为开发者提供了丰富的功能和高效的计算能力。而 C 语言,凭借其高效性和广泛的应用场景,与 PaddlePaddle 的 C API 相结合,能够为深度学习开发带来独特的优势。…...
Mysql之存储过程
MySQL 存储过程(Stored Procedure) 1. 概念 存储过程是一组预编译的 SQL 语句集合,可以通过调用名称来执行。存储过程可以接收参数,并支持复杂的业务逻辑(如条件语句、循环、异常处理等)。它们可以提高代…...
XV6 开发环境搭建
Step 1 搭建ubuntu 20.04 虚拟机 注意:一定要使用ubuntu 20.04,该版本可以直接通过deb安装gnu编译工具链。 安装完虚拟机后,换apt源。 ubuntu20.04镜像下载链接 设置root账户密码: sudo passwd root Step 2 下载解压qemu 5.1.0 wget ht…...
Windows 系统下 Python 环境安装
一、引言 Python 作为一种广泛应用的编程语言,在数据分析、人工智能等领域发挥着重要作用。本文将详细介绍在 Windows 系统上安装 Python 环境的步骤。 二、安装前准备 系统要求 Windows 7 及以上版本一般都能支持 Python。硬件方面,通常 2GB 内存、几…...
VMware Workstation的有线连接消失了
进入/var/lib目录下 cd /var/lib 查看是否存在NetworkManager 文件 ls 将其删除,然后虚拟机reboot一下。 sudo rm -r NetworkManager reboot 解决了,可以联网...
73页车企大数据平台规划与数据价值挖掘应用咨询项目方案解读
该项目旨在帮助乘用车公司规划大数据平台并提高数据挖掘应用水平,以满足业务部门对数据的需求,同时保证数据完整性和真实性。数据应用体系现状存在数据孤岛和数据关注维度不统一的问题,导致业务部门无法便捷使用数据并无法进行业务预测。大数…...
MIF格式详解,javascript加载导出 MIF文件示例
MIF 格式详解 MIF(MapInfo Interchange Format)是由Pitney Bowes Software开发的一种文本格式,用于存储地理空间数据。它通常与地图可视化和地理信息系统(GIS)相关联。MIF文件通常成对出现,一个.mif文件用…...
若依实现图片上传时自动添加水印
文章目录 总体思路1. 修改通用上传方法2. 去除文件路径前两级目录3. 添加水印方法运行效果总结 为了解决图盗用,并有效保护图片版权,若依项目需要实现一个功能:上传图片时,自动在图片上添加水印。这不仅可以有效防止盗用ÿ…...
用于日语词汇学习的微信小程序+ssm
日语词汇学习小程序是高校人才培养计划的重要组成部分,是实现人才培养目标、培养学生科研能力与创新思维、检验学生综合素质与实践能力的重要手段与综合性实践教学环节。本学生所在学院多采用半手工管理日语词汇学习小程序的方式,所以有必要开发日语词汇…...
【信息系统项目管理师】高分论文:论信息系统项目的范围管理(融媒体发布系统)
更多内容请见: 备考信息系统项目管理师-专栏介绍和目录 文章目录 正文1、规划范围管理2、收集需求3、定义范围4、创建WBS5、确认范围6、控制范围正文 我市xx社区作为智慧社区建设的试点社区,将通过各种创新技术手段,促进小区公共服务智能管理应用,实现社区中的基础设施、环…...
Kaggler日志--Day5
进度24/12/15 昨日复盘 Intermediate Mechine Learning之类型变量 读两篇讲解如何提问的文章,在提问区里发起一次提问 实战:自己从头到尾首先Housing Prices Competition for Kaggle Learn Users并成功提交 Intermediate Mechine Learning之管道&#…...
VScode MAC按任意键关闭终端 想要访问桌面文件
说明 最近配置MAC上CPP的运行环境,在安装必要的CPP插件后,配置launch和task等json文件后,点击运行三角形,每次都会跳出main想要访问桌面上的文件。并且输出也是在调试控制台,非常逆天。 尝试 尝试1:尽管我尝试将ta…...
小粑记故乡的记忆
小粑,是我的故乡一安徽池州一带盛行的小吃。约成人掌心大小,厚度只三、四厘米,故谓之“小”。 小粑,主打取材随性,方便常做常吃。这也许就是它抓住人的味蕾,渐次流行开来,成为当地名小吃的主要原…...
git使用小记
环境(centos为例): yum -y install gitmkdir git_dir && cd git_dirgit clone *** 修改代码: git checkout master 切到主分支git pull 拉取最新代码git branch dev 创建开发分支git checkout dev 切换到开发分支修…...
Python实现办公自动化——自动编写word文档
Python实现办公自动化——自动编写word文档 前言安装python-docxpython-docx使用创建word文档设置纸张方向、大小和页边距统一设置格式插入文本插入表格插入图片 结语 前言 工作中有大量的报告编写需求,在不停地复制粘贴之后,突然想到,这种高…...
番外篇 | BGF-YOLO:引入双层路由注意力、广义特征金字塔网络和第四检测头,提高YOLOv8检测性能
前言:Hello大家好,我是小哥谈。本文提出了一种名为BGF-YOLO的新模型,通过引入双层路由注意力、广义特征金字塔网络和第四检测头,提高YOLOv8在脑肿瘤检测中的性能,采用多层特征融合与动态稀疏注意机制以减少特征冗余。 🌈 目录 🚀1.基础概念 🚀2.网络结构 �…...
Python运维自动化之字典Dict
字典Dict(哈希表) Dict即Dictionary,也称为mapping。 Python中,字典由任意个元素构成的集合,每一个元素称为Item,也称为Entry。这个Item是由(key, value)组成的二元组。 字典是可变的、无序的、key不重复的key-value键值对集合。…...
全栈实战:在快马平台从零到一开发一个可部署的极客日报应用
今天想和大家分享一个最近在InsCode(快马)平台上完成的实战项目——极客日报全栈应用开发。这个项目从零开始,完整实现了前后端分离的Web应用开发流程,特别适合想系统性学习全栈开发的同学参考。 项目架构设计 整个应用采用经典的三层架构:前…...
突破JSXBIN加密限制:Jsxer高效解码解决方案
突破JSXBIN加密限制:Jsxer高效解码解决方案 【免费下载链接】jsxer A fast and accurate JSXBIN decompiler. 项目地址: https://gitcode.com/gh_mirrors/js/jsxer 当创意设计师和开发人员面对Adobe ExtendScript的JSXBIN二进制文件时,往往陷入代…...
如何快速入门WebGL:10个实用技巧带你玩转3D图形
如何快速入门WebGL:10个实用技巧带你玩转3D图形 【免费下载链接】WebGL The Official Khronos WebGL Repository 项目地址: https://gitcode.com/gh_mirrors/we/WebGL WebGL(Web Graphics Library)是用于在网页浏览器中渲染交互式2D和…...
awesome-ai-resources部署指南:如何高效组织个人AI学习资料库
awesome-ai-resources部署指南:如何高效组织个人AI学习资料库 【免费下载链接】awesome-ai-resources Learn AI and LLMs from scratch using free resources 项目地址: https://gitcode.com/gh_mirrors/aw/awesome-ai-resources 想要系统学习人工智能和大型…...
Obsidian插件i18n:终极指南,让英文插件说中文的完整解决方案
Obsidian插件i18n:终极指南,让英文插件说中文的完整解决方案 【免费下载链接】obsidian-i18n 项目地址: https://gitcode.com/gh_mirrors/ob/obsidian-i18n 你是否曾因Obsidian插件全是英文界面而感到困扰?数据显示超过83%的Obsidian…...
无需重装!修复赛博朋克2077 DirectX错误:d3dx9_43.dll丢失的快速解决方法
当你满心期待地启动《赛博朋克2077》,却只等来一个“由于找不到d3dx9_43.dll,无法继续执行代码”的错误弹窗,游戏就此卡死,确实让人瞬间血压飙升。别急,这个报错并非意味着你的游戏文件损坏,更不需要重装那…...
图解numpy轴运算:用动画演示argmin/argmax在不同维度下的工作原理(附可运行代码)
用空间思维理解NumPy轴运算:argmin/argmax的维度穿越指南 当你第一次在NumPy中遇到axis参数时,是否感觉像在解一道空间几何题?本文将通过视觉化的思维模型,带你穿透维度的迷雾,掌握argmin和argmax在不同维度数组中的行…...
零基础部署Nanbeige 4.1-3B:Streamlit极简UI手把手教程
零基础部署Nanbeige 4.1-3B:Streamlit极简UI手把手教程 如果你对本地运行大语言模型感兴趣,但又被复杂的命令行界面和简陋的Web界面劝退,那么今天这篇文章就是为你准备的。我们将一起完成一个既好看又好用的本地AI对话界面的部署,…...
终极指南:如何使用UABEA高效处理Unity Asset Bundle资源
终极指南:如何使用UABEA高效处理Unity Asset Bundle资源 【免费下载链接】UABEA c# uabe for newer versions of unity 项目地址: https://gitcode.com/gh_mirrors/ua/UABEA UABEA是一款专业的C#资产包提取工具,专门针对新版本Unity引擎的Asset B…...
(87页PPT)6大领域+50个战略框架模型(附下载方式)
篇幅所限,本文只提供部分资料内容,完整资料请看下面链接 https://download.csdn.net/download/2501_92796370/92683878 资料解读:6 大领域 50 个战略框架模型 详细资料请看本解读文章的最后内容 在商业竞争日趋激烈的当下,系统…...
