Docker镜像,发布到阿里云或私有库
Docker镜像层都是只读的,容器层是可写的
当容器启动时,一个新的可写层被加载到镜像的顶部。
这一层通常被称作“容器层”,“容器层”之下的都叫“镜像层”。
Docker镜像commit操作案例
docker commit提交容器副本使之成为一个新的镜像
docker commit -m=“提交的描述信息” -a=“作者” 容器ID 要创建的目标镜像名:[标签名]
案例演示ubuntu安装vim
-
从Hub上下载ubuntu镜像到本地并成功运行
-
原始的默认Ubuntu镜像是不带着vim命令的
-
外网连通的情况下,安装vim
# docker容器内执行上述两条命令: apt-get update apt-get -y install vim
-
安装完成后,commit我们自己的新镜像
本地镜像发布到阿里云
本地镜像
阿里云开发者平台
https://promotion.aliyun.com/ntms/act/kubernetes.html
创建仓库镜像
选择控制台,进入容器镜像服务,选择个人实例
将镜像推送到阿里云
将阿里云上的镜像下载到本地
本地镜像发布到私有库
-
下载镜像Docker Registry
docker pull registry
-
运行私有库Registry,相当于本地有个私有Docker hub
docker run -d -p 5000:5000 -v /zzyyuse/myregistry/:/tmp/registry --privileged=true registry
-
案例演示创建一个新镜像,ubuntu安装ifconfig命令
- 原始ubuntu镜像中是没有ifconfig命令的
- 安装ifconfig命令
apt-get update apt-get install net-tools
- 安装成功后再次执行ifconfig
- 在容器外commit我们自己的新镜像
docker commit -m="提交的描述信息" -a="作者" 容器ID 要创建的目标镜像名:[标签名]
- 原始ubuntu镜像中是没有ifconfig命令的
-
curl验证私服库上有什么镜像
curl -XGET http:你的IP:5000/v2/_catalog
-
将新镜像 menghaoubuntu:1.0 修改符合私服规范的Tag
docker tag 镜像:Tag Host:Port/Repository:Tag
-
修改配置文件使之支持http
2个配置中间有逗号,是json格式的!!!
2个配置中间有逗号,是json格式的!!!
2个配置中间有逗号,是json格式的!!!"insecure-registries": ["xxx.x.xx.xxx:5000"]
修改完后建议重启docker
systemctl restart docker -
push推送到私服库
-
curl验证私服库上有什么镜像
-
pull到本地并运行