k8s学习笔记之二:搭建本地docker镜像仓库
docker安装详见:https://mp.csdn.net/mdeditor/999741710、下载registry镜像有条件在线拉取,没条件CSDN下载链接:registry.tar1、创建本地镜像仓库映射目录mkdir -p /opt/data/registry #在宿主机创建容器内的数据映射挂载目录2、启动本地镜像仓库(registry容器)docker run ...
docker安装详见:https://mp.csdn.net/mdeditor/99974171
0、下载registry镜像
有条件在线拉取,没条件CSDN下载链接:registry.tar
1、创建本地镜像仓库映射目录
mkdir -p /opt/data/registry #在宿主机创建容器内的数据映射挂载目录
2、启动本地镜像仓库(registry容器)
docker run -d -p 5000:5000 -v /opt/data/registry:/var/lib/registry --name private_registry registry
-d : 让容器可以后台运行
-p :指定映射端口(前者是宿主机的端口号,后者是容器的端口号)
-v :数据挂载(前者是宿主机的目录,后者是容器的目录)
--name: 为运行的容器命名
3、上传、拉取测试
#拉取镜像、打tag、上传到本地私有仓库(以busybox为例,因为busybox比较小)
docker pull busybox:latest #拉取在线镜像
docker tag busybox:latest 192.168.1.11:5000/busybox #镜像别名,标签
docker push 192.168.1.11:5000/busybox #将新标签的镜像上传到私有仓库
#初次上传push、下载pull都会报以下错误:
...server gave HTTP response to HTTPS client
#原因是docker私有仓库服务器,默认基于https传输,所以需要客户端(本地)做相关设置,不使用https传输
#解决办法:vi /etc/docker/daemon.json,添加以下内容(仓库主机IP):
{ "registry-mirrors": ["https://njrds9qc.mirror.aliyuncs.com"], "insecure-registries":["172.20.10.14:5000"]
}
###阿里在线镜像仓库(能连外网的机器设置) "registry-mirrors": ["https://njrds9qc.mirror.aliyuncs.com"],
###局域网私有镜像仓库机器IP(客户端、服务器设置相同) 192.168.1.11
#重新启动docker:
ps -ef|grep dockerd
kill -9 pid
dockerd &
#重新registry容器,并向本地仓库上传镜像:
docker start private_registry
docker push 192.168.1.11:5000/busybox
//删除本地所有的busybox镜像并查看
docker rmi busybox 192.168.147.129:5000/busybox
docker images //查看是否还有busybox镜像的信息
//从本地镜像仓库拉去镜像并查看
docker pull 192.168.147.129:5000/busybox
docker images
docker tag 192.168.1.11:5000/busybox busybox #镜像别名
更多推荐
所有评论(0)