0
点赞
收藏
分享

微信扫一扫

C语言基于TCP的多线程服务器

小迁不秃头 10小时前 阅读 2

因为dockerHub公共仓库是外网的,所以访问就特别慢,所以一般公司都会搭建私人的镜像仓库来保存镜像。一台服务上用docker开启一个私有仓库的镜像,后续其他的docket服务器都将镜像保存在这个私有的仓库

1 设置私有镜像仓库

# 下载镜像
docker pull registry
# 启动镜像
docker run -itd -v /home/wuzhibin/docker/registry:/var/lib/registry -p 5000:5000 --restart=always --name registry registry:latest

-itd:在容器中打开一个伪终端进行交互操作,并在后台运行
-v:把宿主机的/home/wuzhibin/docker/registry目录绑定到容器/var/lib/registry来实现数据的持久化;
-p:映射端口;访问宿主机的5000端口就访问到registry容器的服务了
--restart=always: 这是重启的策略,在容器退出时总是重启容器
--name registry: 创建容器命名为registry

 拉起官方镜像,在一台搭建镜像仓库的容器,并将容器的数据盘映射本地数据持久化,最终的目的是将设置为私有的镜像仓库保存镜像。

 2 添加镜像仓库

# 在其他的服务上设置的镜像仓库地址为私仓地址
vim /etc/docker/daemon.json
{
  "insecure-registries": ["192.168.1.200:5000"],
  "registry-mirrors":  ["https://zh7ton3p.mirror.aliyuncs.com"]
}

systemctl daemon-reload
systemctl restart docker

# insecure-registries 为上一步开启的私有仓库地址
# registry-mirrors 为阿里云镜像加速地址
# 修改docker配置之后一定要重新启动docker 

# 推送镜像到私仓
# 拉取nginx 测试镜像
docker pull nginx 
# 打上私仓标签,如果想推送到私仓必须打上私仓的标签,应该为默认是推送到公共仓库的。
docker tag mginx:latest 192.168.1.200:500/nginx:v1
# 查看镜像名
docker images
# 推送私仓,192.168.1.200:5000/nginx:v1为上一步打上镜像名的镜像
docker push 192.168.1.200:5000/nginx:v1
# 查看私仓镜像仓库
curl http://192.168.1.200:5000/v2/_catalog
# 结果为{"repositories":["nginx"]}表面
# 查看私仓的镜像版本
curl http://192.168.118.16:5000/v2/ubuntu/tags/list

 在其他的服务上设置的镜像仓库地址为私仓地址就可以通过私仓拉起分发布镜像了, 拉取私仓的镜像不仅仅要设置镜像仓库的地址,另外镜像上也要打上私仓的标签,不能默认会从公共仓库拉起和发布

3 拉私仓的镜像

# 拉取私仓的镜像, 其他的服务器也需要和上一步一样添加docker配置中添加私仓地址
# 不加私仓地址会默认从公共仓去拉起,
docker pull 192.168.1.200:5000/nginx:v1
# 查看拉起的镜像
docker images

 上一章:Docker常见软件部署2-CSDN博客

下一章:docker 的网络管理-CSDN博客

举报

相关推荐

0 条评论