author: headsen chen

date:2018-06-30  23:14:16

服务端(私有仓库:centos7_64位),使用端:centos6_64位

1、仓库的搭建:

安装docker:

yum -y install epel-release
yum -y install docker-io
systemctl start docker

将本地的仓库换成阿里云的镜像仓库:

vim /etc/docker/daemon.json  # 内容如下:
{
"registry-mirrors": ["https://cvv5tle1.mirror.aliyuncs.com"] # 这里的镜像源是我专属的, 其他人用可能起不到加速效果
}
systemctl daemon-reload
systemctl restart docker
在本地注册阿里云的镜像:
docker login --username=woccb registry.cn-hangzhou.aliyuncs.com/woccb2/chen
输入设置的密码 

运行一个生成本地仓库的脚本:

sh registry-install.sh

[root@localhost ~]# cat registry-install.sh
#!/bin/bash
# Description: create a private registry v2.
# Version: 0.2
# Author: headsen chen set -o xtrace
if [[ $UID -ne ]]; then
echo "Not root user. Please run as root."
exit
fi # Install Docker if not
docker -v
if [[ $? -ne ]]; then
echo "Please install Docker first."
exit
fi REGISTRY_VERSION=2.2 # Download registry image v2.
docker pull registry:${REGISTRY_VERSION}

# Start registry container
mkdir /opt/registry
docker run -d -p : --restart=always -v /opt/registry:/var/lib/registry --name hummer_registry registry:${REGISTRY_VERSION}

检测生成的docker仓库:

[root@localhost ~]# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
eaa972942548 registry:2.2 "/bin/registry /et..." minutes ago Up minutes 0.0.0.0:->/tcp hummer_registry
[root@localhost ~]#

查询开放的端口:

[root@localhost ~]# lsof -i:
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
docker-pr root 4u IPv6 0t0 TCP *:commplex-main (LISTEN)

2、客户端配置:

安装

yum -y install epel-release
yum -y install device-mapper-event-libs
yum -y install docker-io

修改配置文件(不修改无法和本地仓库进行认证连接)

vim /etc/sysconfig/docker   # 加上黄色标注的部分就可以了

[root@localhost ~]# cat /etc/sysconfig/docker
# /etc/sysconfig/docker
#
# Other arguments to pass to the docker daemon process
# These will be parsed by the sysv initscript and appended
# to the arguments list passed to docker -d other_args="--insecure-registry 192.168.159.131:5000"
DOCKER_CERT_PATH=/etc/docker # Resolves: rhbz# (docker issue #)
DOCKER_NOWARN_KERNEL_VERSION=

service docker restart

测试:下载一个镜像并上传到本地仓库

docker pull webdevops/nginx
docker images
docker tag webdevops/nginx 192.168.159.131:/nginx-chen # 注意这个固定的格式,否则报错
docker push 192.168.159.131:/nginx-chen #出现以下提示表示push成功,
# 如果是加上tag: docker push  192.168.159.131:5000/chen:latest
[root@localhost ~]# docker push 192.168.159.131:/nginx-chen
The push refers to a repository [192.168.159.131:/nginx-chen] (len: )
ca89ae17bc84: Image already exists
2eed794b7b9a: Image successfully pushed
15a4031b10d3: Image successfully pushed
15a4031b10d3: Buffering to Disk
6c4863f14961: Image already exists
aa02f81f314b: Image already exists
0893fa3a44c9: Image successfully pushed
6565352c3a2b: Image successfully pushed
6565352c3a2b: Buffering to Disk
e86584bf870d: Image successfully pushed
928d4898ab17: Image successfully pushed
928d4898ab17: Buffering to Disk
073806b60691: Image already exists
7eb5c12881e1: Image already exists
63474e4f2842: Image successfully pushed
f7fdafe228d3: Image successfully pushed
8475d7efa2f0: Image successfully pushed
565220263a7c: Image successfully pushed
7d614f18edc3: Image successfully pushed
Digest: sha256:417cfafb30d330f5de3c9cef12ee935a321d16593bdd903de3d1017ad3eaa3f3
[root@localhost ~]#

删除下载的镜像,并从本地的仓库进行下载,看速度是否提高:

docker rmi webdevops/nginx
docker rmi 192.168.159.131:/nginx-chen
docker images
docker pull 192.168.159.131:5000/nginx-chen # 此时从本地的仓库进行下载,发现是极速的秒传

查询私有仓库中有哪些镜像:

[root@localhost ~]# curl -XGET http://192.168.159.131:5000/v2/_catalog
{"repositories":["busybox"]} [root@localhost ~]# curl -XGET http://192.168.159.131:5000/v2/busybox/tags/list
{"name":"busybox","tags":["latest"]} 

docker的私有仓库的搭建的更多相关文章

  1. docker学习------docker私有仓库的搭建

    192.168.138.102:23451.私有仓库的搭建(docker pull registry),拉取最新的镜像 2.查看拉取的仓库镜像(docker images) 3.启用registry镜 ...

  2. docker 私有仓库简易搭建

    概要 本地私有仓库 局域网私有仓库 总结 概要 docker hub 使用非常方便,而且上面有大量的镜像可以使用. 但是,每次都远程下载镜像速度非常慢,如果能在本地做一个 docker 的仓库,多人协 ...

  3. Docker私有仓库的搭建与使用

    目录 Docker搭建私有仓库 一.搭建registry私有仓库 1.拉取私有仓库registry镜像 2.启动私有仓库容器 3.修改deamon.json 4.重启docker 5.启动regist ...

  4. Docker本地私有仓库实战

    Docker仓库主要用于存放Docker镜像,Docker仓库分为公共仓库和私有仓库,基于registry可以搭建本地私有仓库,使用私有仓库的优点如下: 1)节省网络带宽,针对于每个镜像不用去Dock ...

  5. 部署Nexus作为docker的私有仓库

    目录 Docker搭建Nexus私有仓库... 1 一.安装部署... 1 1.安装... 2 2.访问网页端... 2 二.配置使用... 2 1.创建本地仓库... 2 2.docker配置... ...

  6. Docker Harbor私有仓库部署与管理 (超详细配图)

    Docker Harbor私有仓库部署与管理 1.Harbor 介绍 2.Harbor部署 3.Harbor管理 1.Harbor 介绍: 什么是 Harbor ? Harbor 是 VMware 公 ...

  7. Python Docker 查看私有仓库镜像【转】

    文章来源:python Docker 查看私有仓库镜像 pip 安装: # 首先安装epel扩展源: yum -y install epel-release # 更新完成之后,就可安装pip: yum ...

  8. Git 安装及用法 github 代码发布 gitlab私有仓库的搭建

    版本控制是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统. 这个版本控制软件,有 svn还有git,是一个工具. git是由linux的作者开发的 git是一个分布式版本控制系统 ...

  9. Docker registry 私有仓库镜像查询、删除、上传、下载 shell

    #Docker官方私有仓库registry #官方只提供了API接口,不方便使用,就写了个shell #docker-registry安装配置http://www.cnblogs.com/elvi/p ...

随机推荐

  1. DataGridView添加右键菜单等技巧

    1). 添加一个快捷菜单contextMenuStrip1:2). 给dataGridView1的CellMouseDown事件添加处理程序:  程序代码 private void DataGridV ...

  2. web.py+fastcgi+nginx 502错误解决

    用web.py照着官网在服务器上搭好了后台.这次很奇怪地出现了一个Nginx 502 Bad Gateway的错误. 执行上面的kill `pgrep -f "python /path/to ...

  3. deb包的2种安装安装方法

    一.cydia重启自动安装:用ifunbox进入//var/root/Media/Cydia/AutoInstallCydia/AutoInstall 需要分别单独建立,注意大小写.然后把你要安装的d ...

  4. hdu1428(记忆化搜索)

    题意:“他考虑从A区域到B区域仅当存在一条从B到机房的路线比任何一条从A到机房的路线更近(否则可能永远都到不了机房了…”这句话一定要理解清楚.就是说,对于当前位置,如果下一个状态与终点的最短距离大于或 ...

  5. CentOS下安装网卡驱动

    前言最近,一台机器从FreeBSD换为CentOS,一路安装顺利.完事之后发现,网卡没有启用,dmesg | grep eth 命令确定网卡没有驱动导致的.于是开始了一路艰辛的安装过程. 安装过程1. ...

  6. RP2836 OUT0-OUT7 对应关系

    ARM-IO9           OUT0        PA8 备用 P5-A4管脚,可以连接74HC164D级联 ARM-IO10         OUT7        PA1       3 ...

  7. Linux tar This does not look like a tar archive

    由于昨天公司内网服务器坏了,所以急需搭建新的Linux环境. 在安装maven时,使用tar 命令解压maven.tar.gz出现: tar :This does not look like a ta ...

  8. librtmp将本地FLV文件发布到RTMP流媒体服务器

    没有用到ffmpeg库 可以将本地FLV文件发布到RTMP流媒体服务器 使用librtmp发布RTMP流可以使用两种API:RTMP_SendPacket()和RTMP_Write(). 使用RTMP ...

  9. js实现置顶

    //-----------点击事件--------------- onclick="Topfun()" //-----------js代码--------------- <s ...

  10. 关于ajax跨域的一些说说

    跨域:跨当然是跨过去,域当然是别的服务器 (说白点就是去别服务器上取东西) 只要协议.域名.端口有任何一个不同,都被当作是不同的域 ajax 是一种请求响应无刷新技术(xmlhttqrequest对象 ...