如果你的服务需要配置给多台服务器,
那么镜像的方案就是搞一个镜像服务器,
其他服务器要部署某一个服务的时候,
去这个服务器拉取镜像,这就是私有仓库的由来
PasteSpider的私有仓库的实现是使用docker registry,我们一起来看看在PasteSpider中是如何创建私有仓库的!
基础信息-仓储列表-->新建
私有仓库要看需求,如果单台服务器,不建议搭建这个,没这个必要,还浪费每次的推拉时间
这里要注意的是域名和端口,不能使用443,因为使用的是自建证书,由于私有仓库的限制,一定要使用https的模式,然后是对应的端口在服务器上要开放了白名单!
基于你的实际情况填写,如果不需要对外的话,可以填写局域网的IP等信息!
PasteSpider里面需要使用到image,也就是我们说的容器的镜像,可以理解成软件安装包,容器可以看成是安装后的软件,可以理解成绿色安装的模式。为了更好的在多个服务器之间流通这个镜像和镜像的版本管理,我们引入了仓储的模式,也就是docker官方的registry。
准备一个可以使用的域名,只需要域名,参照如下图进行设置,注意端口需要是外网可以访问的!
上面的登陆用户名和密码自己随便输入,注意字母开头,不要过短也不要过长,作为私有仓储的账号和密码,我们选择域名https的模式,这里面的https的证书在后面PasteSpider会自己创建。服务器选择这个仓储需要挂载在哪个服务器上。
点击最下方的提交按钮后,仓储的信息就提交了,接着我们到 基础信息-仓储列表 找到刚刚创建的这个仓储,在他的后方有一个按钮,“去创建 ”,点击后系统会提示你已经创建对应的任务了,就是创建仓储的任务,如下图:(运行记录-工作列表)
我上面这个是已经执行完成的,刚创建的应该是提示运行中,如果有上图一样的已失败,则点击最后面的详细,查看哪一个步骤错误了。按照提示进行修改或者重试!
按照提示进行修改,知道建仓这个任务执行成功!
!!!注意,由于registry的配置的问题,建仓的这个过程中会重启docker!!! 所以PasteSpider也会经历重启这个动作,重启后他会继续执行这个任务的后续步骤。
私有仓库创建后,会创建一个测试镜像,名称叫做pastetestimage
你可以到服务器上执行
docker images |grep paste
如果是其他服务器,你也可以使用docker pull拉取这个镜像看看,是否部署成功!
私有仓库创建后,项目中的服务如何使用这个?
在项目的服务(这个服务必须是源码模式或者发布模式的)
然后在扩展配置中使用仓库
创建仓库的时候不是会绑定一个服务器么,假设为A
如果我们部署的服务"贴代码-api"设置默认环境部署在服务器B上,那么构建升级的时候,系统会在宿主服务器上构建镜像后推送镜像给docker registry(基于配置,这个应该在A)
服务"贴代码-api"在部署的时候,会从docker registry中拉取镜像到B服务器,然后再执行docker run等升级操作!