通过前面的学习,我们已经知道,怎么将本地自己制作的镜像发布到阿里云远程镜像仓库中去。但是在实际工作开发中,一般,我们都是将公司的镜像发布到公司自己搭建的私服镜像仓库中,那么一个私服的镜像仓库怎么搭建?怎么将自己的镜像推送到私服仓库中呢?怎么验证是否成功呢?本文咱们就一起来学学怎么将镜像推送到私服镜像中。
大家好,我是凯哥Java(kaigejava),乐于分享,每日更新技术文章,欢迎大家关注“凯哥Java”,及时了解更多。让我们一起学Java。文末送上本系列教程其他文章直通车,欢迎大家系统地去学习本文目录:1:下载镜像 DockerRegistry2:运行私有库Registry,相当于本地有个私有的Docker hub3:案例演示创建一个新镜像,ubuntu安装ifconfig命令安装ifconfig查看现有镜像:4:curl验证私服库上有什么镜像5:将新镜像修改符合私服规范的tag6:修改配置文件使之支持http7:push推送到私服8:curl验证私服上有什么镜像第二次查看9:pull到本地并运行从私服拉取命令:重新查看本地镜像: docker私有镜像仓库:Docker Registry是官方提供的工具,可以用于构建私有镜像仓库本地搭建私有仓库步骤1:下载镜像 DockerRegistry命令:docker pull registry
2:运行私有库Registry,相当于本地有个私有的Docker hub命令:docker run -d -p 端口:端口 -v 容器地址:映射地址 --privileged-true registry默认情况,仓库被创建在容器的/var/lib/registry目录下,建议自行用容器卷映射,方便宿主机两条实例:docker run -d -p 5000:5000 -v /n/myregistry/:/tmp/registry --privileged=true registry
查看docker正在运行的容器:
3:案例演示创建一个新镜像,ubuntu安装ifconfig命令
安装ifconfig在容器中执行下面两个命令:apt-get updateapt-get install net-tools
使用commit命令制作一个带有ifconfig的ubuntu.注意,docker commit命令是在宿主机上执行的套用公式:docker commit -m"add ifconfig" -a"凯哥Java" 0930939e6f99 kagejava/ifconfigubuntu:1.0.1查看现有镜像:
4:curl验证私服库上有什么镜像命令:curl -XGET http://192.168.50.128:5000/v2...说明:192.xxx是虚拟机的地址
可以看到私服上面是空的。5:将新镜像修改符合私服规范的tag命令公式docker tag 镜像:Tag HOST:Port、Repository:Tag注意:自己host主机ip地址。也就是虚拟机的ip地址使用命令将:kaigejava/ifconfigubuntu:1.0.1 这个镜像修改为:192.168.50.128:5000/kagejavaifconfig:1.0.1docker tag kagejava/ifconfigubuntu:1.0.1 192.168.50.128:5000/kaigejavaifconfig:1.0.1
说明:192.168..50.128是虚拟机主机的ip.命令执行完成之后,查看当前imags.如下图:
6:修改配置文件使之支持http在docker的json文件中添加"insecure-registries":["192.168.50.128:5000"]注意修改ip及添加逗号
重启docker命令:systemctl restart docker重启docker后,重启私服docker run -d -p 5000:5000 -v /n/myregistry/:/tmp/registry --privileged=true registry7:push推送到私服命令公式:docker push ip:断开/镜像信息:版本
当出现以下说明已经push成功:
8:curl验证私服上有什么镜像第二次查看命令:curl -XGET http://192.168.50.128:5000/v2...
可以看到,我们已经将新的镜像上传到私服上了。9:pull到本地并运行
从私服拉取命令:docker pull ip:端口/镜像名:版本号
重新查看本地镜像:
直通车,本系列教程已发布文章,快速到达,《Docker学习系列》教程已经发布的内容如下:
【图文教程】Windows11下安装Docker Desktop
【填坑】在windows系统下安装Docker Desktop后迁移镜像位置
【Docker学习系列】Docker学习1-docker安装
【Docker学习系列】Docker学习2-docker设置镜像加速器
【Docker学习系列】Docker学习3-docker的run命令干了什么?docker为什么比虚拟机快?
【Docker学习系列】Docker学习2-常用命令之启动命令和镜像命令
【Docker学习系列】Docker学习系列3:常用命令之容器命令
【Docker学习系列】Docker学习4-常用命令之重要的容器命令
【Docker教程系列】Docker学习5-Docker镜像理解
【Docker教程系列】Docker学习6-Docker镜像commit操作案例
【Docker学习教程系列】7-如何将本地的Docker镜像发布到阿里云
大家好,我是凯哥Java(kaigejava),乐于分享,每日更新技术文章,欢迎大家关注“凯哥Java”,及时了解更多。让我们一起学Java
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。