使用registry搭建docker私服仓库
使用registry搭建docker私服仓库
默认情况下,我们拉取docker镜像大多都是从 dockerhub 上拉取的,但有些时候有些镜像是我们自己内部构建的,不想公开给别人使用,那么这个时候就需要构建一个自己的镜像私服了,而 docker 正好提供了,registry镜像,正好可以用来构建自己的私服。
一、拉取 registry镜像
docker pull registry
二、根据镜像启动一个容器
1、创建一个数据卷
docker volume create registry-huan
2、启动容器
docker run -d -p 5000:5000 --restart=always -v registry-huan:/var/lib/registry --name registry-huan registry
-p 5000:5000将容器内部的5000端口暴露给外部的5000端口--restart=always表示遇到错误自动重启--name执行启动后容器的名字-v registry-huan:/var/lib/registry表示将容器内部的数据挂载到自己的数据卷registry-huan中
三、随机访问一个私服的接口,看是否可以返回数据
http://47.101.130.164:5000/v2/_catalog

注意: 这个 repositories 中之所以会存在数据,是因为我之前上传一个 hello-world 的镜像
四、推送一个镜像到自己的私服中
1、拉取一个 hello-world 镜像
docker pull hello-world
2、给这个镜像打一个 tag
docker tag hello-world 47.101.130.164:5000/hello-world
注意:
1、47.101.130.164 这个为我 registry 所在的机器的ip地址
2、5000 为启动 registry 对外暴露的端口
3、推送镜像到自己的私服中
docker push 47.101.130.164:5000/hello-world
- 在这一步可能会报如下错误

- 解决方案如下
| 描述 | 操作 |
|---|---|
| 1、在 vim /usr/lib/systemd/system/docker.service文件中增加如下配置 | --insecure-registry 47.101.130.164:5000 |
| 2、重新启动docker | systemctl daemon-reload systemctl restart docker.service |
| 3、再次执行 docker push xxx 就会发现可以推送了 |
4、从私服中拉取镜像
docker pull 47.101.130.164:5000/hello-world-new

五、注意事项
1、如果要推送到自己的私服中,那么在给镜像打tag时需要以 ip[域名]:端口 作为前缀
2、如果推送镜像失败,可能需要修改 /usr/lib/systemd/system/docker.service 配置文件
3、47.101.130.164 为我docker registry 所在的服务器的地址
4、本地操作使用docker的版本为 19.03.1
[root@huan1993 ~]# docker -v
Docker version 19.03.1, build 74b1e89
使用registry搭建docker私服仓库的更多相关文章
- docker使用registry搭建本地私有仓库
参考链接来自:http://blog.csdn.net/wangtaoking1/article/details/44180901/ 和Mavan的管理一样,Dockers不仅提供了一个中央仓库,同时 ...
- 搭建docker镜像仓库(一):使用registry搭建本地镜像仓库
目录 一.系统环境 二.前言 三.使用registry搭建私有镜像仓库 3.1 环境介绍 3.2 k8smaster节点配置镜像仓库 3.3 k8sworker1节点配置从私有仓库上传和拉取镜像 3. ...
- 一步步搭建docker私有仓库并从私有仓库中下载镜像
一步步搭建docker私有仓库 #下载镜像 docker pull registry#查看镜像 docker images #运行私有仓库,指定端口和数据卷 docker run -d -p : -v ...
- 搭建docker私有仓库
保存镜像的地方成为仓库(registry).目前有2种仓库:公共仓库和私有仓库. 最方便的是使用公共仓库上传和下载镜像,下载不需要注册,上传需要到公共仓库注册.公共仓库网站:https://hub.d ...
- 019.nexus搭建docker镜像仓库/maven仓库
一.安装docker CE 参考docker doc https://docs.docker.com/install/linux/docker-ce/centos/ 二.docker启动nexus3 ...
- windows 环境下搭建docker私有仓库
windows 环境下搭建docker私有仓库 1.在公用仓库中pull仓库镜像 docker pull regitry 2.启动仓库镜像 //-d意思是后台运行,-p是做端口映射,这里是将本地的50 ...
- 搭建docker镜像仓库(二):使用harbor搭建本地镜像仓库
目录 一.系统环境 二.前言 三.Harbor 四.使用harbor搭建私有镜像仓库 4.1 环境介绍 4.2 k8smaster节点安装配置harbor 4.2.1 安装harbor离线包 4.2. ...
- docker(五) 使用Docker Registry搭建镜像私服
1.创建私服 docker run -d --name registry -v /opt/data/registry:/var/lib/registry -p 5000:5000 registry - ...
- 基于 registry 搭建 Docker 私有镜像仓库
今天主要介绍使用 registry 来搭建 Docker私有镜像仓库,方便在公司内部项目中使用,registry 也是 Docker 官方提供的一个镜像,操作也很简单. dockerhub: http ...
随机推荐
- Xshell破~~解和SecureCRT破~~解办法,亲测可行
解决办法很简单,那就是安装MobaXterm, 安装上即可使用,无需破击,免费,功能同样强大,不比xshell, SecureCRT功能差.它是集万千功能于一身的全能型终端神器. 听名字就不会太差,看 ...
- IKEv2协议协商流程: (IKE-SA-INIT 交换)第一包
文章目录 1. IKEv2 协商总体框架 2. 第一包流程图 3. openswan源码学习 3.1 ikev2parent_outI1() 3.2 ikev2parent_outI1_withsta ...
- Identity角色管理三(编辑角色)
因只有角色名能修改故继续使用创建角色的视图模型 using System.ComponentModel; using System.ComponentModel.DataAnnotations; na ...
- abp element 显示分页
App.vue添加组件 <template> <div id="app"> <dataTable></dataTable> < ...
- java中各个类相互调用资源的原理
当我们要进行跨类的调用/使用的时候,比如当前类调用另一个类中的变量或方法时, 这时需要一定的条件,如果那些将要被调用的变量或方法是static(静态)变量,也叫类变 量,那么可以通过类名调用,相 ...
- AtCoder Regular Contest 069 D - Menagerie 枚举起点 模拟递推
arc069.contest.atcoder.jp/tasks/arc069_b 题意:一堆不明身份的动物排成一圈,身份可能是羊或狼,羊一定说实话,狼一定说假话.大家各自报自己的两边是同类还是不同类, ...
- Cookie和Session的介绍与认识
Cookie: cookie是一种客户端的状态管理技术. 当浏览器向服务器发送请求的时候,服务器会将少量的数据以set-cookie消息头的方式发送给浏览器,当浏览器再次访问服务器时,会将这些数据以c ...
- 【TP3.2.3】addAll方法的坑
问题:做一个导入Excel到数据库的功能中需要用到addAll功能,但是每次执行到addAll()时都会报错,如下 Insert value list does not match column li ...
- Apache AB(1) - 快速使用
前言 Apache AB的优缺点 十分快捷.简单 只适用HTTP协议 该工具更加适用于单接口性能压测 参数化实现麻烦:被测接口没有太多参数化 不支持场景化,不能将上下文串联起来 适用于快速开发小的场景 ...
- windows 根据 端口号 找到进程ID PID
List process by port number netstat -ano | findstr 8080 Proto Local Address Foreign Address State PI ...