[Docker] Docker 配置私有仓库

Docker 私有仓库配置 centos7.2 Docker 1.12.2 下的Docker 免费私有仓库配置 阅读详情

什么是 Docker Registry

Registry 是一个开源的,无状态的(stateless),高可扩展的(highly scalable)服务器端应用,用来存储和获取你的分布式 Docker 镜像。

Registry 是一个存储(storage)和内容分发(content delivery)系统,持有命名的(named)Docker 镜像,通过使用不同的标签版本来区分。

Example: the image distribution/registry, with tags 2.0 and 2.1.

使用 docker 的 push 和 pull 命令来和仓库交互。

Example: docker pull registry-1.docker.io/distribution/registry:2.1.

理解镜像命名

在 docker 命令中使用镜像名称来反映他们的来源:

  • docker pull ubuntu 表示 docker 从官方的 Docker Hub 中拉取名称为 ubuntu 的镜像。这是命令 docker pull docker.io/library/ubuntu 的简写。
  • docker pull myregistrydomain:port/foo/bar 表示 docker 从位于 myregistrydomain:port 的仓库中寻找镜像 foo/bar。

部署仓库服务器

部署仓库之前,需要在主机上安装 Docker,一个仓库是一个运行在 Docker 中的 registry 镜像。

运行一个本地仓库

使用如下命令行来开始一个仓库容器:

$ docker run -d -p 5000:5000 --restart=always --name registry registry:2

这样仓库便准备好被使用。

从 Docker Hub 中复制一个镜像到你的仓库中

  1. 从 Docker Hub 中拉取 ubuntu:16.04 镜像:

    $ docker pull ubuntu:16.04
    
  2. 将镜像重新标签为 localhost:5000/my-ubuntu。这将创建一个当前镜像的额外标签。

    $ docker tag ubuntu:16.04 localhost:5000/my-ubuntu
    
  3. 将镜像推送到运行在 localhost:5000 的本地仓库中:

    $ docker push localhost:5000/my-ubuntu
    
  4. 删除本地缓存的 ubuntu:16.04 和 localhost:5000/my-ubuntu 镜像,这样你便可以从你的仓库中拉取镜像。这不会删除你仓库中的 localhost:5000/my-ubuntu 镜像。

    $ docker image remove ubuntu:16.04
    $ docker image remove localhost:5000/my-ubuntu
    
  5. 从你本地仓库中拉取 localhost:5000/my-ubuntu 镜像。

    $ docker pull localhost:5000/my-ubuntu
    

如果出现无法从私有仓库 pull 或者 push,有如下报错情况:

Error response from daemon: Get myregistryhost:5000/v1/_ping: http: server gave HTTP response to HTTPS client

这是因为启动的 registry 服务不是安全可信赖的,需要在 docker 的 /etc/docker 目录下编辑deamon.json,添加下面内容:

$ tee /etc/docker/daemon.json << EOF
{ "insecure-registries":["myregistryhost:5000"] }
EOF

停止一个本地仓库

使用停止容器的命令来停止仓库:

$ docker container stop registry

使用 docker container m 删除容器:

$ docker container stop registry \
&& docker container rm -v registry

基本配置

可以通过在 docker run 命令中添加参数和选项来配置容器

仓库自动启动

通过使用 --restart=always 来设置仓库随 Docker 自动重启。

定制发布的端口

如果 5000 端口已被占用,或者要启动多个仓库,可以定制仓库的端口。通过 -p 来设置,第一部分是仓库在主机运行的端口,第二部分是仓库在容器内的监听端口。

docker run -d -p 5001:5000 \
--name registry-test registry:2

定制本地存储

在默认情况下,你的仓库数据被持久化在主机文件系统的 docker volume,可以通过 bind mount 将主机的某个目录 bind-mount 到仓库容器的 /var/lib/registry/(仓库数据在容器中的位置):

$ docker run -d -p 5000:5000 \
	--restart=always --name registry \
	-v /mnt/registry:/var/lib/registry \
	registry:2

本地认证访问控制

为了使本地仓库可以对其它主机可用,在网络间安全使用,需要使用 TLS 来进行配置。本文暂不介绍 TLS 配置外部可访问性,详见官网。

本地认证访问控制使用 htpasswd 来存储密文:

  1. 为用户 testuser 创建一个密码文件,密码为 testpasswd:

    $ mkdir auth
    $ docker run --entrypoint htpasswd \
    registry:2 -Bbn testuser testpasswd > auth/htpasswd
    
  2. 停止仓库:

    $ docker container stop registry
    
  3. 使用基础认证启动仓库:

    $ docer run -d -p 5000:5000 \
    --restart=always --name registry \
    -v \`pwd\`/auth:/auth \
    -e "REGISTRY_AUTH=htpasswd" \
    -e "REGISTRY_AUTH_HTPASSWD_REALM=Registry Realm" \
    -e REGISTRY_AUTH_HTPASSWD_PATH=/auth/htpasswd \
    -v \`pwd\`/registry:/var/lib/registry \
    registry:2
    
  4. 尝试使用 pull 或者 push,都会失败。需要登录仓库:

    $ docker login myregistrydomain.com:5000
    

    退出仓库:

    docker logout myregistrydomain.com:5000
    

参考资料

[1] https://docs.docker.com/registry/deploying/#/running-a-domain-registry “Deploy a registry server”
[2] https://www.jianshu.com/p/7918c9af45a3 “docker私有仓库搭建并且配置仓库认证”

八十一、【docker容器】docker私有仓库部署配置学习 本文介绍了如何搭建Docker私有仓库的完整流程。首先展示了私有仓库的架构图,包含本地集群与互联网仓库的交互关系。然后详细说明了仓库服务器的配置步骤,包括安装docker-distribution服务等。客户端配置部分重点讲解了hosts文件修改和daemon.json配置,特别强调了insecure-registries的设置。最后通过镜像上传、查询和验证测试的完整流程,演示了如何将镜像推送到私有仓库并从其他节点拉取使用。整个过程涵盖了私有仓库部署到实际应用的关键环节,为构建企业内部容器镜像管理提供了实用 阅读详情

相关推荐

DaVinciCFG实战:从ARXML配置到ADC代码生成全解析

本文详细解析了使用DaVinciCFG工具进行ADC模块配置的全过程,从ARXML文件处理到代码生成与集成。重点介绍了关键参数配置、ARXML语法规则、常见错误排查及代码优化技巧,帮助开发者掌握AUTOSAR架构下ADC驱动开发,提升汽车电子系统的可靠性。

f9g0h的博客 378

docker(五)构建私有仓库

这篇文章我们主要讲解创建docker私有仓库。 简单概述一下,就是docker提供了一个搭建私有仓库的镜像registry ,运行该镜像的容器并且对外暴露5000端口就算是搭建完成了。

liwangcuihua的博客 755

11.3 海岛微电网与工业园区的构网应用

海岛微电网与工业园区配电网是构网技术下沉应用的两大典型场景。海岛微电网以构网型储能为核心,解决孤岛系统稳定性问题,需具备黑启动、多能源协调和故障穿越能力;工业园区则侧重电能质量治理、并离网无缝切换和经济优化运行。两类场景均需解决多机并联稳定性、故障特性适配和分层协同控制等关键技术。构网型变流器的电压源构建能力、自适应控制策略及飞轮储能等特殊应用,为构建高可靠性、高经济性的分布式能源系统提供了创新解决方案。

技术工作者 1084

搭建私有仓库-registry

Docker搭建私有仓库,设置私有库的目录映射,实现持久化

JinLu_的博客 2280

SAP 配额修改 + 修改记录写入实现

采购配额修改并写入修改记录 cdhdr 和 cdpos

GAVIN 1096

应用处理器(AP)、系统级芯片(SoC)与微控制器(MCU)的区别与联系

应用处理器(AP)、系统级芯片(SoC)与微控制器(MCU)的区别与联系

a_zxswer的博客 1692

Docker-创建功能完善的私有仓库

在之前的文章中,曾短暂的介绍过快速安装私有仓库。今天详细介绍一下,搭建私有仓在企业中是必不可少的。 安装Docker Registry docker registry 工具目前最新的版本为2.0系列版本,这一版本和一些类库和工具一起被打包为负责容器内容分发的工具集:Docker Distribution。目前其核心的功能组件任然为负责镜像仓库的管理。 新版本的 Registry基于 Golang进...

阿文的博客 948

攻克反光难题!YOLOv9工业缺陷检测实战:高反光件、微小划痕精准识别(附抗反光代码+产线数据)

文章摘要:本文针对不锈钢、铝合金等高反光工业件的缺陷检测难题,提出了一套“硬件抗反光+YOLOv9小目标增强”的解决方案。通过分析反光干扰(镜面/漫反射)和微小划痕(0.1mm级)两大核心问题,详细介绍了500万像素工业相机+偏振光源的硬件配置方案,以及基于偏振图像融合和超分辨率放大的预处理方法。最终实现误检率1.2%、微小划痕检出率99.3%的工业级检测效果,并提供了可落地的代码实现和车间实测数据。(148字)

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 1041

Docker安装部署Registry

一,部署Registry docker pull registry docker run -d -p 5000:5000 -v /myregistry:/var/lib/registry registry -d 是后台启动容器。 -p 将容器的 5000 端口映射到 Host 的 5000 端口。5000 是 registry 服务端口。 -v 将容器 /var/lib/registry ...

十年呵护的专栏 1327

NVIDIA Isaac GR00T N1 人形机器人强化学习入门教程(二)详细步骤

LeRobot 格式 1.1 加载数据集 要加载数据集,我们需要定义以下 3 项内容: 在数据中显示图像帧 我们还可以对 LeRobotSingleDataset 类中的数据进行一系列转换。下面展示了如何对数据进行转换。 现在看看应用转换后的数据有何不同。 例如,对状态和操作进行规范化和串联,对视频图像进行裁剪、调整大小和颜色抖动。 二、GR00T 推断 本教程介绍如何使用 GR00

2506_90492529的博客 3012

【docker】--- 详解 WSL2 中的 Ubuntu 和 Docker Desktop 的区别和关系!

在编程的艺术世界里,代码和灵感需要寻找到最佳的交融点,才能打造出令人为之惊叹的作品。而在这座秋知叶i博客的殿堂里,我们将共同追寻这种完美结合,为未来的世界留下属于我们的独特印记。

秋知叶i 1314

Docker搭建本地仓库registry

一、拉取registry docker pull registry:2 二、运行容器 docker run -d -p 5000:5000 -v /myregistry:/var/lib/registry registry:2 -d是后台启动容器。 -p将容器的 5000 端口映射到 Host 的 5000 端口。5000 是 registry 服务端口。 -v将容器 ...

hq.zheng的博客 619

【知识分享】IBIS 建模指南 04

文章详细阐述了将缓冲器数据转换为IBIS模型格式的核心步骤与规范要求。主要内容包括:1)IBIS文件三大结构(文件头信息、组件引脚映射、缓冲器行为描述)及其关键词定义;2)四种关键I-V表(上下拉、电源/地钳位)的数据处理规则,强调需避免重复计算效应;3)切换特性描述方法,指出V-T波形表优于Ramp数据的三大优势;4)差分缓冲器通过[DiffPin]关键词实现建模的特殊流程。文中特别强调数据外推校验、参考电压基准转换、工艺角数据排序等易错环节的处理技巧,为创建符合IBIS 4.0规范的精确模型提供指导。

一只豌豆象的博客 2052

Docker 配置私有仓库

Docker 配置私有仓库 安装 我们采用Docker镜像的形式 获取镜像 docker pull registry 启动私有仓库容器 docker run ‐di ‐‐name=registry ‐p 5000:5000 registry 打开浏览器 输入地址 http://192.168.71.136:5000/v2/_catalog 看到 {"repositories":[]...

LQM1528490339的博客 5418

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

docker配置连接harbor私有仓库

docker配置连接harbor私有仓库

ApexPredator的博客 2119

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

docker 配置私有仓库

docker 配置私有仓库

AntHub的博客 2790

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

docker配置nexus私有仓库

第一步:登录nexus仓库,并创建仓库 选择docker仓库 仓库类型说明 选项 说明 hosted 本地存储。像官方仓库一样提供本地私库功能 proxy 提供代理其它仓库的类型 group 组类型,能够组合多个仓库为一个地址提供服务 填写仓库信息 我的配置 第二步:配置docker私有仓库 首先找到 daemon.json linux系统默认 在 /etc/docker/下, 如果没有 daemon.json 可以使用 touch daemon.json 命令创建。

qq_26462567的博客 2406

Docker配置从私有仓库拉取镜像

如上命令执行完成后etc/ssl/certs/ca-bundle.crt 以及/etc/ssl/certs/ca-bundle.trust.crt就包含了新的自定义证书,可以使用指令查看。2、将该证书拷贝一份到目标主机(即使用docker pull主机)上,并放在/etc/docker/certs.d/下。证书的问题需要编辑 daemo.json 文件:vi /etc/docker/daemon.json。1、登陆私有仓库服务器,进入/etc/docker/certs.d/目录下,找到ca.crt证书。

过于丰富,无法简介 5758

docker私有仓库配置

yml 配置文件出错,yml 对格式要求非常严格。以 key - value 的形式存在。key和value 之间必须有空格。

2301_77950376的博客 566

Docker安装配置私有仓库

docker私有仓库 docker私有仓库图例 私有仓库配置 主机名 ip地址 最低配置 registry 192.168.1.100 1CPU,1G内存 [root@registry ~]# yum install -y docker-distribution [root@registry ~]# systemctl enable --now docker-distribution [root@registry ~]# curl http://192.168

m0_67900727的博客 1565

Docker安装及私有仓库配置

docker安装 yum install docker 增加私有仓库配置 启动参数方式 在/usr/lib/systemd/system/docker.service增加以下配置 --insecure-registry=registry.example.com:5000 配置文件方式 在/etc/docker/daemon.json中写入如下内容(如果文件不存在请新建该文件) { "reg...

若明天不见 1045

docker私有仓库的搭建、配置、使用

环境:CentOS7 1. 拉取registry镜像 docker pull registry 2. 创建仓库容器 docker run -di --name=registry -p 5000:5000 registry 3. 在浏览器访问仓库 地址栏输入 [ip]:[port]/v2/_catalog 例如我的是 http://192.168.44.133:5000/v2/_catalog 页面出现 {“repositories”:[]} 表示仓库容器创建启动成功 4. 让docker信任私有仓库 编

GENIUSROAD的博客 3646

windows7 安装docker 配置私有仓库

boot2docker(使用windows dockertools 默认安装的系统适用) 使用 docker ssh 登陆到 boot2docker 虚拟机 # docker ssh <name> 使用 命令修改配置文件, # sudo vi /var/lib/boot2docker/profile 在文件最后增加一行: # EXTRA_ARGS="--insecure-...

小小的博客 775

Docker入门到实践 (十一) docker私有仓库的搭建与配置

文章目录一、前言二、Docker私有仓库的搭建与配置1、拉取私有仓库镜像2、启动registry镜像3、查看私有仓库是否搭建成功4、修改daemon.json配置文件5、重启docker服务三、私有仓库镜像的上传与拉取1、本地镜像上传到私有仓库2、拉取私有仓库的镜像到本地 一、前言   在上一篇文章中已经介绍了本地镜像推送到阿里云 和 下载镜像到本地, 下面正式进入到Docker私有仓库的搭建...

浅末年华的博客 1574

docker搭建nexus3配置docker私有仓库

docker搭建nexus3配置docker私有仓库 拉取镜像启动容器 查找镜像 docker search nexus 选取使用次数较多的 sonatype/nexus3 查看镜像版本 https://hub.docker.com/ 选取使用sonatype/nexus3:3.31.1 docker pull sonatype/nexus3:3.31.1 启动镜像 # 在/mnt下新建nexus3文件夹, 并给予权限 # 如果服务器有防火墙记得开放28081端口 # nexus

qxq-xq的博客 1799

【云原生 • Docker】docker 私有仓库的搭建、配置与镜像上传

所谓的 Docker 私有仓库,就是指企业内部所使用的仓库。仓库用于存放各种镜像,区别在于公有仓库所存储的都是一些通用型的镜像比如N Tomcat 镜像、ginx 镜像等。如果想要在一个 局域网。192.168.200.129 是我的 Docker 宿主机(虚拟机)IP 地址,大家操作时注意查看自己的的宿主机 IP。此时再次查看 Docker 中的镜像,可以看到 jdk1.8 镜像已经被标记;2个配置中间有个逗号 ','别漏了,这个配置是json格式的。来共享一些镜像,那么就需要用到私有仓库。

qq_39093474的博客 916
上一篇: [算法 LeetCode_004] Median of Two Sorted Arrays
下一篇: [Docker] Docker 初探
buildcourage
博客等级 码龄9年 34粉丝 20原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值