docker将本地镜像pull到阿里云和registry

news2024/9/30 19:41:35

目录

一、上次到阿里云服务器

1、制作一个带有vim功能的Ubuntu镜像

2、在阿里云上面创建镜像仓库

3、从阿里云仓库中上传和拉取镜像

二、上传镜像到本地私有库registry

1、下载镜像docker registry

2、运行私有库registry,相当于本地有个私有docker hub。

3、制作一个带有ifconfig的Ubuntu镜像

4、curl验证私有仓库有什么镜像

5、将镜像修改符合私有库规范的tag

6、修改配置文件使之支持http

7、push推送到私服库

8、再次curl验证私服库有什么镜像

9、pull到本地并运行


一、上次到阿里云服务器

1、制作一个带有vim功能的Ubuntu镜像

docker pull ubuntu
docker images
REPOSITORY    TAG       IMAGE ID       CREATED         SIZE
ubuntu        latest    ba6acccedd29   2 years ago     72.8MB

docker run -it ubuntu
root@8b9f2522faa0:/# apt-get update   #先更新一下软件包列表
root@8b9f2522faa0:/# apt-get install vim -y
root@8b9f2522faa0:/# echo "hello world" > abc.tec    #随便添加一点信息
root@8b9f2522faa0:/# cat abc.tec 
hello world

按下Ctrl+p+q退出容器,容器不停止(如果直接使用exit,容器会停止运行,这样就不能制作镜像了)

# docker ps

CONTAINER ID   IMAGE     COMMAND   CREATED         STATUS         PORTS     NAMES
8b9f2522faa0   ubuntu    "bash"    5 minutes ago   Up 5 minutes             optimistic_wescoff

# docker commit -m="ubuntu add vim"  -a="haha" 8b9f2522faa0  ubuntuvim:3.23    
sha256:761b629328e8fb5ae1cd187d5a1b0c5f12107bcad6663b1cf8b89c93e5f5201a

# docker images                                     #查看制作好的镜像
REPOSITORY    TAG       IMAGE ID       CREATED          SIZE
ubuntuvim     3.23      761b629328e8   56 seconds ago   191MB

2、在阿里云上面创建镜像仓库

3、从阿里云仓库中上传和拉取镜像

直接复制示例中的代码

# docker login --username=aliyun8035446320 registry.cn-hangzhou.aliyuncs.com
Password: 
WARNING! Your password will be stored unencrypted in /root/.docker/config.json.
Configure a credential helper to remove this warning. See
https://docs.docker.com/engine/reference/commandline/login/#credentials-store

Login Succeeded

# docker images
REPOSITORY    TAG       IMAGE ID       CREATED          SIZE
ubuntuvim     3.23      761b629328e8   11 minutes ago   191MB
# docker tag 761b629328e8 registry.cn-hangzhou.aliyuncs.com/yoyo_chengdu/ubuntu:3.23

# docker push registry.cn-hangzhou.aliyuncs.com/yoyo_chengdu/ubuntu:3.23
The push refers to repository [registry.cn-hangzhou.aliyuncs.com/yoyo_chengdu/ubuntu]
af91d09903b5: Pushed 
9f54eef41275: Pushed 
3.23: digest: sha256:f74cfb2e5ef2ad30cd14fb5da6dbbc6eae9870c4e973f181abff11cfc603f1de size: 741

# docker rmi -f 761b629328e8      #删除制作的镜像

# docker pull registry.cn-hangzhou.aliyuncs.com/yoyo_chengdu/ubuntu:3.23 #拉取镜像

# docker images
REPOSITORY                                              TAG       IMAGE ID       CREATED          SIZE
registry.cn-hangzhou.aliyuncs.com/yoyo_chengdu/ubuntu   3.23      761b629328e8   16 minutes ago   191MB

# docker run -it 761b629328e8
root@2fb3a6485a7f:/# cat abc.tec 
hello world           #查看信息是否还在

二、上传镜像到本地私有库registry

1、下载镜像docker registry

# docker pull registry

2、运行私有库registry,相当于本地有个私有docker hub。

docker run -d -p 5000:5000 -v /yoyo/myregistry/:/tmp/registry --privileged=true registry

3、制作一个带有ifconfig的Ubuntu镜像

#docker images
REPOSITORY   TAG       IMAGE ID       CREATED       SIZE
ubuntu       latest    ba6acccedd29   2 years ago   72.8MB

#docker run -it ba6acccedd29
root@32e09b37ba40:/# apt-get update 
root@32e09b37ba40:/# apt-get install net-tools -y

root@32e09b37ba40:/# ifconfig 
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 172.17.0.3  netmask 255.255.0.0  broadcast 172.17.255.255
        inet6 fe80::42:acff:fe11:3  prefixlen 64  scopeid 0x20<link>
        ether 02:42:ac:11:00:03  txqueuelen 0  (Ethernet)
        RX packets 8745  bytes 31390066 (31.3 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 4426  bytes 243881 (243.8 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
再使用快捷键 Ctrl+p+q退出,容器继续在后台运行。

# docker ps
CONTAINER ID   IMAGE          COMMAND                   CREATED         STATUS         PORTS                                       NAMES
32e09b37ba40   ba6acccedd29   "bash"                    7 minutes ago   Up 7 minutes    
# docker commit -m="ifconfig cmd add" -a="yoyo" 32e09b37ba40 ifubuntu:3.24
sha256:f53ed00a420725a04c8ba4314c8cf839e640d79df898b4539d60c442d59a6975

4、curl验证私有仓库有什么镜像

# curl -XGET http://192.168.80.172:5000/v2/_catalog
{"repositories":[]}

5、将镜像修改符合私有库规范的tag

# docker images
REPOSITORY   TAG       IMAGE ID       CREATED         SIZE
ifubuntu     3.24      f53ed00a4207   2 minutes ago   124MB
# docker tag ifubuntu:3.24 192.168.80.172:5000/ifubuntu:3.24
# docker images
REPOSITORY                     TAG       IMAGE ID       CREATED         SIZE
192.168.80.172:5000/ifubuntu   3.24      f53ed00a4207   3 minutes ago   124MB

6、修改配置文件使之支持http

# vim /etc/docker/daemon.json

, "insecure-registries":["192.168.80.172:5000"]  #重点逗号


#重启docker

7、push推送到私服库

# docker run -d -p 5000:5000 -v /yoyo/myregistry/:/tmp/registry --privileged=true registry
7cc7789c511f09f713993ee11e22dbb79a08ef00f1138f124610d2a19b4c221c
#重新启用私服库

# docker push 192.168.80.172:5000/ifubuntu:3.24
The push refers to repository [192.168.80.172:5000/ifubuntu]
cc42a815d1b0: Pushed 
9f54eef41275: Pushed 
3.24: digest: sha256:c58ea58f4c35f4ea8bd139bd5a9b3bdc8cc9a497abf581d2e50847ea419eb8b6 size: 741
 

8、再次curl验证私服库有什么镜像

# curl -XGET http://192.168.80.172:5000/v2/_catalog
{"repositories":["ifubuntu"]}

9、pull到本地并运行

#docker images
REPOSITORY                     TAG       IMAGE ID       CREATED          SIZE
ifubuntu                       3.24      f53ed00a4207   12 minutes ago   124MB
192.168.80.172:5000/ifubuntu   3.24      f53ed00a4207   12 minutes ago   124MB

# docker rmi -f f53ed00a4207 f53ed00a4207

# docker pull 192.168.80.172:5000/ifubuntu:3.24
3.24: Pulling from ifubuntu
7b1a6ab2e44d: Already exists 
7565baf88cb5: Pull complete 
Digest: sha256:c58ea58f4c35f4ea8bd139bd5a9b3bdc8cc9a497abf581d2e50847ea419eb8b6
Status: Downloaded newer image for 192.168.80.172:5000/ifubuntu:3.24
192.168.80.172:5000/ifubuntu:3.24

# docker images
REPOSITORY                     TAG       IMAGE ID       CREATED          SIZE
192.168.80.172:5000/ifubuntu   3.24      f53ed00a4207   16 minutes ago   124MB

#运行刚刚拉取的镜像查看是否带有ifconfig命令

# docker images
REPOSITORY                     TAG       IMAGE ID       CREATED          SIZE
192.168.80.172:5000/ifubuntu   3.24      f53ed00a4207   16 minutes ago   124MB
registry                       latest    b8604a3fe854   2 years ago      26.2MB
ubuntu                         latest    ba6acccedd29   2 years ago      72.8MB
# docker run -it f53ed00a4207
root@eaed85410974:/# ifconfig 
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 172.17.0.3  netmask 255.255.0.0  broadcast 172.17.255.255

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

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

相关文章

MUNIK第二届功能安全及自动驾驶研讨会将在沪召开

2024年4月26日,由上海秒尼科技术服务有限公司(以下简称“Munik”)联合Parosoft主办的“第二届功能安全及自动驾驶研讨会”将在上海虹桥隆重开幕。 据了解,本次功能与自动驾驶安全研讨会,将聚焦在ISO 26262标准体系下,自动驾驶新形势下各个零部件供应商如何满足功能安全等相关重…

Ubuntu Desktop 快速显示桌面

Ubuntu Desktop 快速显示桌面 1. 快捷方式2. show desktop iconReferences 1. 快捷方式 Ctrl Win D&#xff1a;快速显示桌面 / 恢复屏幕显示 2. show desktop icon System Settings -> Appearance -> Add show desktop icon to the launcher ​ 点击 Show Desktop…

Druid连接池的能力介绍与使用方法

Druid连接池的能力介绍与使用方法 本文将介绍druid连接池的能力&#xff1a;监控sql调用数据&#xff08;慢sql、调用量、异常堆栈&#xff09;、防止sql注入和数据库密码加密。 1. Druid连接池简介 Alibaba Druid官网使用手册里是这样介绍的&#xff1a;Druid连接池是阿里巴…

云原生网络魔术师:Docker高级网络实战演练与深度解析

在Docker的世界中&#xff0c;网络无疑是一块充满魔力的土地。当我们超越了基础的网络配置&#xff0c;步入Docker高级网络领域时&#xff0c;你会发现一个全新的、强大而灵活的网络模型正在等待你的探索。本文将带你亲历Docker高级网络实战操作&#xff0c;揭开overlay网络、自…

【动态规划】Leetcode 70. 爬楼梯

【动态规划】Leetcode 70. 爬楼梯 解法1 ---------------&#x1f388;&#x1f388;题目链接&#x1f388;&#x1f388;------------------- 假设你正在爬楼梯。需要 n 阶你才能到达楼顶。 每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢&#xff1f; 输入…

GaussDB WDR分析之集群报告篇

AWR报告目前已经成为Oracle DBA分析问题&#xff0c;定位故障最为重要的报告&#xff0c;阅读与分析AWR报告的技能也是Oracle DBA必备的技能。国产数据库为了提高运维便捷性&#xff0c;都在做类似Oracle AWR报告的模仿&#xff0c;只不过由于指标体系不够完善&#xff0c;因此…

Windows系统安装WampServer结合内网穿透实现公网访问本地服务

文章目录 前言1.WampServer下载安装2.WampServer启动3.安装cpolar内网穿透3.1 注册账号3.2 下载cpolar客户端3.3 登录cpolar web ui管理界面3.4 创建公网地址 4.固定公网地址访问 前言 Wamp 是一个 Windows系统下的 Apache PHP Mysql 集成安装环境&#xff0c;是一组常用来…

网络安全笔记-day7,共享文件服务器

文件共享服务器 准备阶段 打开虚拟机win2003 创建文件 D:. —share   –down   |  test1.txt   |   —up     01xxx.txt     02xxx.txt 配置IP win2003 192.168.1.10 255.255.255.0 winxp 192.168.1.20 255.255.255.0 创建共享文件夹 创建共享&#xff1…

Axure RP 9 for Mac中文激活版:原型设计工具

Axure RP 9 for Mac是一款值得设计师信赖的原型设计工具。它以其卓越的性能和稳定的运行赢得了广大用户的赞誉。 软件下载&#xff1a;Axure RP 9 for Mac中文激活版下载 在Axure RP 9中&#xff0c;您可以尽情发挥自己的设计才华&#xff0c;创造出独一无二的原型作品。无论是…

【MySQL】9. 内置函数

函数 1. 日期函数 获得年月日&#xff1a; mysql> select current_date(); ---------------- | current_date() | ---------------- | 2024-03-23 | ---------------- 1 row in set (0.00 sec)获得时分秒&#xff1a; mysql> select current_time(); ------------…

看完就等于拿捏浮点数在内存中的储存了

诸君又该学习了&#xff0c;今天我们继续来一睹浮点数的奥妙真容。 经过前面文章对整形提升相关的解释&#xff0c;我们都对整形和字符在内存空间上的储存已经有了大概的认知&#xff0c;那么现在我们就来好好讲讲浮点数在内存中的储存规则。 目录 浮点数与整形储存的不同 …

which is not functionally dependent on columns in GROUP BY clause 错误解决方法

今天遇到了which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_modeonly_full_group_by的错误&#xff0c;记录一下解决方法。 该错误是因为在SQL语句中用到了聚合函数&#xff0c;但是聚合函数之外的字段没有全部放到group …

电脑电池健康度查询

首先使用winr 输入cmd&#xff0c;打开黑窗口 再出入以下代码&#xff1a; powercfg/batteryreport将路径中文件找到即可查看电池健康度。

软件测试(自动化测试)

1. Selenium 1.1 Selenium是什么&#xff1f; 用来做web自动化测试的框架。 1.2 Selenium特点 支持各种浏览器&#xff0c;支持各种平台&#xff0c;支持各种语言&#xff0c;有丰富的API&#xff0c; 1.3 工作原理 1.4 Selenium环境搭建 下载配套浏览器及驱动 这里使用Ch…

vcs编译选项--不常用

1&#xff09;如何查看波形的毛刺&#xff08;glitch&#xff09; 参考&#xff1a;公众号&#xff1a;IC学社 需要添加仿真选项&#xff1a;fsdbglitch0 “值得说明的是&#xff0c;glitch 对 design 是非常不好的&#xff0c;需要规避&#xff0c;设计代码中应该具有检查 g…

Express:快速搭建Node.js应用的基石

&#x1f90d; 前端开发工程师、技术日更博主、已过CET6 &#x1f368; 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 &#x1f560; 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 &#x1f35a; 蓝桥云课签约作者、上架课程《Vue.js 和 E…

DataV 在HTML中使用

一&#xff1a;什么是DataV 介绍 | DataV (jiaminghi.com) 组件库基于Vue &#xff08;React版 (opens new window)&#xff09; &#xff0c;主要用于构建大屏&#xff08;全屏&#xff09;数据展示页面即数据可视化&#xff0c;具有多种类型组件可供使用&#xff1a;…

[leetcode] 138. 随机链表的复制

给你一个长度为 n 的链表&#xff0c;每个节点包含一个额外增加的随机指针 random &#xff0c;该指针可以指向链表中的任何节点或空节点。 构造这个链表的 深拷贝。 深拷贝应该正好由 n 个 全新 节点组成&#xff0c;其中每个新节点的值都设为其对应的原节点的值。新节点的 n…

Spring Bean加载优先级

当我们使用 ConditionalOnMissingBean / ConditionalOnBean注解去给某个 bean 注入赋予条件时&#xff0c;那在条件判断时我们需要确保条件判断过程所需的环境已准备好。 举个例子 下面的代码中有两个配置类&#xff0c;涉及两个 Bean 的注入 配置类 ConfigA 需要注入一个 A…

taro之Swiper的使用

图样&#xff1a; 往往我们需要轮播图去显示我们想要的图片之类的 这是工作的代码 <View classNametop-title><SwiperclassNamebanner-swiperinterval{3000}circularautoplay>{homeBannerList.map((item) > {return (<SwiperItem key{item.id}><View…