龙空技术网

Docker私有仓库

我的名字o 169

前言:

目前朋友们对“docker私有仓库nginx”大致比较着重,小伙伴们都需要剖析一些“docker私有仓库nginx”的相关文章。那么小编在网摘上收集了一些关于“docker私有仓库nginx””的相关知识,希望我们能喜欢,同学们一起来学习一下吧!

在工作中我们所使用镜像为企业的镜像,像这种镜像是不能存储到公共的docker hub上的。那么就需要我们手动搭建一个私有的仓库

下载registry镜像

下载docker hub上最新版本的registry

docker pull registry

导入registry镜像为文件,文件名registry。

docker save -o registry registry

把registry镜像保存为文件是为了保证在没有公网的服务器上也可以使用registry镜像

从文件载入镜像可以使用Docker load命令

docker load --input 文件
运运行registry容器
docker run -itd -v /opt/registry:/var/lib/registry -p 5000:5000 --restart=always --name registry registry:latest
-itd:在容器中打开一个伪终端进行交互操作,并在后台运行;-v:把宿主机的/opt/registry目录绑定 到 容器/var/lib/registry目录(这个目录是registry容器中存放镜像文件的目录),来实现数据的持久化;-p:映射端口;访问宿主机的5000端口就访问到registry容器的服务了;--restart=always:这是重启的策略,假如这个容器异常退出会自动重启容器;--name registry:创建容器命名为registry,你可以随便命名;registry:latest:这个是刚才pull下来的镜像;查看镜像仓库中所有的镜像查看镜像仓库中所有的镜像
 curl {"repositories":[]}

现在是空的,因为才刚运行,里面没有任何镜像内容

修改daemon.json文件

如果没有daemon.json文件,就创建一个

cat /etc/docker/daemon.json{ "insecure-registries":[ "172.220.10.3:5000" ],  "max-concurrent-downloads": 10}
镜像打标签

使用docker images命令查看镜像

 [root@ice docker]# docker imagesREPOSITORY TAG IMAGE ID CREATED SIZEdocker.io/openresty latest c82521676580 3 weeks ago 109 MB

将docker.io/nginx打上v1标签。同时修改仓库来源为172.220.10.3:5000/nginx

docker tag docker.io/openresty 172.220.10.3:5000/openresty:v1
私有仓库的上传/下载

下载使用docker push命令上传更改标签后的镜像到私有仓库

docker push 172.220.10.3:5000/openresty:v1

使用docker pull命令下载openresty镜像(必须加上版本号下载)

[root@ice docker]# docker pull openresty:v1Trying to pull repository 172.220.10.3:5000/openresty ... v1: Pulling from 172.220.10.3:5000/openresty534e72e7cedc: Pull complete 9421d7f09f88: Pull complete Digest: sha256:4eeae101b1d5fea1d3d5c59055fbde8a3b53712e08c36f643d357301c59b3fdcStatus: Downloaded newer image for 172.220.10.3:5000/openresty:v1

查看镜像仓库中所有的镜像

curl {"repositories":["openresty"]}

标签: #docker私有仓库nginx