《docker基础篇:6.本地镜像发布到私有库》包括本地镜像发布到私有库流程、docker regisry是什么、将本地镜像推送到私有库

简介: 《docker基础篇:6.本地镜像发布到私有库》包括本地镜像发布到私有库流程、docker regisry是什么、将本地镜像推送到私有库

image.png

@[toc]

6.本地镜像发布到私有库

image.png

6.1本地镜像发布到私有库流程

image.png

6.2docker regisry是什么

image.png

6.3将本地镜像推送到私有库

使用步骤:
1)下载镜像Docker Registry
2)运行私有库Registry,相当于本地有个私有Docker hub
3)案例演示创建一个新镜像,ubuntu安装ifconfig命令
4)curl验证私服库上有什么镜像
5)将新镜像zzyyubuntu:1.2修改符合私服规范的Tag
6)修改配置文件使之支持http
7)push推送到私服库
8)curl验证私服库上有什么镜像2
9)pull到本地并运行

注意点1:
下载镜像Docker Registry
image.png

注意点2:
运行私有库Registry,相当于本地有个私有Docker hub
image.png

注意点3:
案例演示创建一个新镜像,ubuntu安装ifconfig命令

  • 从Hub上下载ubuntu镜像到本地并成功运行
  • 原始的Ubuntu镜像是不带着ifconfig命令的

image.png

  • 外网连通的情况下,安装ifconfig命令并测试通过
docker容器内执行上述两条命令:
apt-get update
apt-get install net-tools

image.png
image.png

  • 安装完成后,commit我们自己的新镜像
公式:
docker commit -m="提交的描述信息" -a="作者" 容器ID 要创建的目标镜像名:[标签名]
命令:在容器外执行,记得
docker commit -m="ifconfig cmd add" -a="zzyy" a69d7c825c4f zzyyubuntu:1.2

image.png

  • 启动我们的新镜像并和原来的对比
    image.png

注意点4:
curl验证私服库上有什么镜像

 curl -XGET http://192.168.111.162:5000/v2/_catalog
可以看到,目前私服库没有任何镜像上传过。。。。。。

image.png

注意点5:
将新镜像zzyyubuntu:1.2修改符合私服规范的Tag

按照公式: docker   tag   镜像:Tag   Host:Port/Repository:Tag
自己host主机IP地址,填写同学你们自己的,不要粘贴错误,O(∩_∩)O
使用命令 docker tag 将zzyyubuntu:1.2 这个镜像修改为192.168.111.162:5000/zzyyubuntu:1.2
docker tag  zzyyubuntu:1.2  192.168.111.162:5000/zzyyubuntu:1.2

image.png

注意点6:
修改配置文件使之支持http

别无脑照着复制,registry-mirrors 配置的是国内阿里提供的镜像加速地址,不用加速的话访问官网的会很慢。
2个配置中间有个逗号 ','别漏了,这个配置是json格式的。
2个配置中间有个逗号 ','别漏了,这个配置是json格式的。
2个配置中间有个逗号 ','别漏了,这个配置是json格式的。

vim命令新增如下红色内容:vim /etc/docker/daemon.json
{
   
  "registry-mirrors": ["https://aa25jngu.mirror.aliyuncs.com"],
  "insecure-registries": ["192.168.111.162:5000"]
}

上述理由:docker默认不允许http方式推送镜像,通过配置选项来取消这个限制。====> 修改完后如果不生效,建议重启docker

image.png

注意点7:
push推送到私服库

docker push 192.168.111.162:5000/zzyyubuntu:1.2

image.png

问题:这块可能会报错显示链接被拒绝

Error response from daemon: Get https://.. xxxxx: connect: connection refused

答案:报错原因可能有3点
1)第一步排查,docker register镜像是否启动成功
2)第二步排查,注意点6中修改配置文件使之支持http
3)第三步最重要排查,是否重启docker使其配置文件生效,我就是未重启导致一直失败,配置后重启命令即可:systemctl reload docker

注意点8:
curl验证私服库上有什么镜像2

curl -XGET http://192.168.111.162:5000/v2/_catalog

image.png

注意点9:
pull到本地并运行

docker pull 192.168.111.162:5000/zzyyubuntu:1.2

image.png

docker run -it 镜像ID /bin/bash

image.png

本人其他相关文章链接

1.《docker基础篇:1.Docker简介》包括Docker是什么、容器与虚拟机比较、能干嘛、去哪下
2.《docker基础篇:2.Docker安装》包括前提说明、Docker的基本组成、Docker平台架构图解(架构版)、安装步骤、阿里云镜像加速、永远的HelloWorld、底层原理
3.《docker基础篇:3.Docker常用命令》包括帮助启动类命令、镜像命令、有镜像才能创建容器,这是根本前提(下载一个CentOS或者ubuntu镜像演示)、容器命令、小总结
4.《docker基础篇:4.Docker镜像》包括是什么、分层的镜像、UnionFS(联合文件系统)、docker镜像的加载原理、为什么docker镜像要采用这种分层结构呢、docker镜像commit
5.《docker基础篇:5.本地镜像发布到阿里云》
6.《docker基础篇:6.本地镜像发布到私有库》包括本地镜像发布到私有库流程、docker regisry是什么、将本地镜像推送到私有库
7.《docker基础篇:7.Docker容器数据卷》包括坑、回顾下上一讲的知识点,参数V、是什么、更干嘛、数据卷案例
8.《docker基础篇:8.Docker常规安装简介》包括:docker常规安装总体步骤、安装tomcat、安装mysql、安装redis
image.png

重要信息

image.png
image.png

目录
相关文章
|
4月前
|
缓存 Shell 网络安全
将应用程序打包成Docker镜像时可能遇到哪些问题?
将应用程序打包成Docker镜像时可能遇到哪些问题?
377 77
|
4月前
|
Shell 应用服务中间件 nginx
docker 镜像的部分常用命令
docker镜像常用命令
141 16
|
4月前
|
关系型数据库 MySQL Docker
|
8月前
|
Ubuntu NoSQL Linux
《docker基础篇:3.Docker常用命令》包括帮助启动类命令、镜像命令、有镜像才能创建容器,这是根本前提(下载一个CentOS或者ubuntu镜像演示)、容器命令、小总结
《docker基础篇:3.Docker常用命令》包括帮助启动类命令、镜像命令、有镜像才能创建容器,这是根本前提(下载一个CentOS或者ubuntu镜像演示)、容器命令、小总结
442 6
《docker基础篇:3.Docker常用命令》包括帮助启动类命令、镜像命令、有镜像才能创建容器,这是根本前提(下载一个CentOS或者ubuntu镜像演示)、容器命令、小总结
|
Shell Linux Docker
docker常用命令大全(基础、镜像、容器、数据卷)
这些命令仅仅是 Docker 命令行工具的冰山一角,但对于日常操作来说已经非常全面。通过熟练地使用这些基础命令,用户可以有效地管理 Docker 的镜像、容器、数据卷和网络。随着用户对 Docker 的深入使用,更高级的命令和选项将会变得必需,但上面列出的命令已经为用户提供了一个坚实的起点。对于初学者来说,理解和掌握这些常用命令是深入学习 Docker 的基础。
750 5
docker常用命令大全(基础、镜像、容器、数据卷)
|
存储 安全 Ubuntu
Docker 镜像与 Docker 容器的区别
【8月更文挑战第27天】
969 5
|
存储 Ubuntu 应用服务中间件
在Docker中,怎么快速查看本地的镜像和容器?
在Docker中,怎么快速查看本地的镜像和容器?
|
Shell 应用服务中间件 nginx
docker 服务,镜像,容器命令总结
docker 服务,镜像,容器命令总结
280 4