docker将本地镜像pull到阿里云和registry,Linux运维开发面试技巧

先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7

深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年最新Linux运维全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上运维知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

如果你需要这些资料,可以添加V获取:vip1024b (备注运维)
img

正文

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":[]}

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以添加V获取:vip1024b (备注运维)
img

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
不再深入研究,那么很难做到真正的技术提升。**

需要这份系统化的资料的朋友,可以添加V获取:vip1024b (备注运维)
[外链图片转存中…(img-tDHaiZW7-1713128437215)]

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 5
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值