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. Python partition() 方法

    描述 Python partition() 方法用来根据指定的分隔符将字符串进行分割. 如果字符串包含指定的分隔符,则返回一个3元的元组,第一个为分隔符前面的子字符串,第二个为分隔符本身,第三个为分隔 ...

  2. django 官方文档下载

    今天发现自己的django文档有点过时了,于是想去下载一份新,找了老半天才找到pdf的下载地址:于是把它记录下来,希望以后可以直接用. 一.进行django官方网站: 二.文档的pdf文件就在docu ...

  3. Object-C中的类-类的声明

    1.关键字命名:为了避免与已有的c,C++关键字冲突,ObjectC关键字都有@开始: 如:@classs,@interface,@private,@try,@catch,@protocol等.  2 ...

  4. 输入LPCWSTR类型字符串

    LPCWSTR tmp = L"xxx"; char*转到LPCWSTR LPCSTR(charTmp)

  5. SMBUS的介绍与访问

    博文是为了总结自己在bios学习上面的点点滴滴,并且加深印象,由于本人水平有限,难免存在不足之处,望指正,同时感谢CSDN提供的平台.本文主要介绍的是SMBUS. 1  SMBUS的简介 特点: SM ...

  6. Android实战简易教程-第二十三枪(基于Baas的用户注冊验证username是否反复功能!)

    接上一篇,加入验证用户名是否已经注冊功能! 仅仅须要改动MainActivity.java: package com.example.logintest; import java.util.List; ...

  7. 线程相关函数(7)-sem_post(), sem_wait() 信号量

    sem_tsem_initsem_waitsem_trywaitsem_timedwaitsem_postsem_destroy 生产者消费者实例: #include <stdlib.h> ...

  8. 集合运算 蓝桥杯 set容器

    题目描述 给出两个整数集合A.B,求出他们的交集.并集以及B在A中的余集. 输入格式 第一行为一个整数n,表示集合A中的元素个数. 第二行有n个互不相同的用空格隔开的整数,表示集合A中的元素. 第三行 ...

  9. ORACLE中DELETE和TRUNCATE的区别

    语法 delete from AA truncate table AA 区别 1.delete from后面可以写条件(也就是where子句,delete from AA where aa.列名 = ...

  10. cocos2dx迷你地图

    用CCRenderTexture就可以了,不知是否有更好的方法. if (!miniMap) { miniMap=CCSprite::create(); miniMap->setZOrder() ...