1. 简介

1.1. 自己做个私有镜像,方便上传和下载,我也在docker官网注册了一个账号,做好的镜像可以传上去

1.2. Redhat自带私有镜像的功能,需要安装包,这是howto:

https://access.redhat.com/documentation/enus/red_hat_enterprise_linux_atomic_host/7/html/getting_started_with_containers/get_started_with_docker_formatted_container_images#creating_a_private_docker_registry_optional

1.3. IBM的howto:https://www.ibm.com/developerworks/linux/library/l-docker-private-reg/index.html(主要流程按照这个做的)

1.4. docker的官方网网站:https://www.docker.com/

2. 环境

2.1.  docker-distribution:2.6.2-1.git48294d9.el7

2.2. docker:2:1.12.6-68.gitec8512b.el7

3. 安装与配置

3.1. 使用yum安装

yum install docker-distribution

3.2. 启动服务

systemctl start docker-distribution && systemctl enable docker-distibution

3.3. 给镜像仓库来个独立磁盘

# lvcreate -n lv_docker_registry -L 20G vg_system
# mkfs.xfs /dev/mapper/vg_system-lv_docker_registry
# mkdir /data_docker_registry
# echo "/dev/mapper/vg_system-lv_docker_registry /data_docker_registry                    xfs     defaults        0 0" >> /etc/fstab
# mount -a

3.4. 使用htpasswd工具进行认证

# yum install -y httpd-tools
# htpasswd -Bc /etc/docker-distribution/registry/egistry_passwd admin

3.5. 给http服务加上一个ssl

# mkdir /etc/docker/certs.d/hctjosadm01.hccos.cn/
# openssl req -newkey rsa:4096 -nodes -sha256 -keyout /etc/docker/certs.d/hctjosadm01.hccos.cn/hccos.key -x509 -days 365 -out /etc/docker/certs.d/hctjosadm01.hccos.cn/hccos.crt 注意:服务名字和机器名字要一致,其他都默认就好

# update-ca-trust
# systemctl restart docker

注意:如果出现不能重启docker情况,吧原始数据删掉就好,rm -rf /var/lib/docker/*

3.6. 修改yml配置文件 /etc/docker-distribution/registry/config.yml

version: 0.1
log:
fields:
service: registry
storage:
cache:
layerinfo: inmemory
filesystem:
rootdirectory: /data_docker_registry
http:
addr: hctjosadm01.hccos.cn:5000
host: https://hctjosadm01.hccos.cn:5000
tls:
certificate: /etc/docker/certs.d/hctjosadm01.hccos.cn/hccos.crt
key: /etc/docker/certs.d/hctjosadm01.hccos.cn/hccos.key
auth:
htpasswd:
realm: basic-realm
path: /etc/docker-distribution/registry/registry_passwd

3.7. 重启docker-distribution服务

systemctl restart docker-distribution

3.8. 由于是私建CA,所有客户端访问的时候会不信任,需要在启动时候加上这个选项或者修改/usr/lib/systemd/system/docker.service

ExecStart=/usr/bin/dockerd-current \
--insecure-registry hctjosadm01.hccos.cn:5000

3.9. 记得reload systemd

systemctl daemon-reload

3.10. 试试吧

~]# docker login https://hctjosadm01.hccos.cn:5000
Username: admin
Password:
Login Succeeded

4. 常用命令

# docker pull

# docker push

# docker login

# docker logout

# docker search

# docker image

5. 使用Vmware harbor搭建带UI功能的docker hub

5.1. 官方网站:https://github.com/vmware/harbor

5.2. 安装手册:https://github.com/vmware/harbor/blob/master/docs/installation_guide.md

5.3. 说实话这个写的已经非常的全了,而且搭建起来非常简单,以后有项目需要的话我再写在博客里

【Linux】【Services】【SaaS】Docker+kubernetes(7. 安装Docker私有镜像仓库)的更多相关文章

  1. 【Docker】(4)搭建私有镜像仓库

    [Docker](4)搭建私有镜像仓库 说明 1. 这里是通过阿里云,搭建Docker私有镜像仓库. 2. 这里打包的镜像是从官网拉下来的,并不是自己项目创建的新镜像,主要测试功能 一.搭建过程 首先 ...

  2. 安装harbor私有镜像仓库

    有朋友安装harbor的过程中遇到很多问题,为此写一篇最简单安装harbor的文档,希望能帮助所有刚开始接触harbor的新手.harbor的架构不做探究. 实验验环境:os --> cento ...

  3. Linux 安装 Harbor 私有镜像仓库

    下载 最新发行:https://github.com/goharbor/harbor/releases # 下载文件 wget https://github.com/goharbor/harbor/r ...

  4. 【Docker】 CentOS7 安装 Docker 及其使用方法 ( 一 )

    系列目录: [Docker] CentOS7 安装 Docker 及其使用方法 ( 一 ) [Docker] 使用Docker 在阿里云 Centos7 部署 MySQL 和 Redis (二) [D ...

  5. Docker笔记--ubuntu安装docker

    Docker笔记--ubuntu安装docker 1.更换国内软件源,推荐中国科技大学的源,稳定速度快(可选) sudo cp /etc/apt/sources.list /etc/apt/sourc ...

  6. Docker深入浅出系列 | 5分钟搭建你的私有镜像仓库

    Docker已经上市很多年,不是什么新鲜事物了,很多企业或者开发同学以前也不多不少有所接触,但是有实操经验的人不多,本系列教程主要偏重实战,尽量讲干货,会根据本人理解去做阐述,具体官方概念可以查阅官方 ...

  7. 利用docker实现私有镜像仓库

    利用docker实现私有镜像仓库 在linux服务器上安装了docker过后,可以拉取docker镜像仓库: docker pull registry 再执行命令让镜像run起来: docker ru ...

  8. [Docker]Harbor部署私有镜像仓库

    Harbor部署私有镜像仓库 认识: Harbor 是一个用于存储和分发 Docker 镜像的企业级 Registry 服务器. 部署环境: CentOS7 Python2.7.5 Docker CE ...

  9. Docker 构建私有镜像仓库

    在使用Docker一段时间后,往往会发现手头积累了大量的自定义镜像文件,这些文件通过公有仓库进行管理并不方便,另外有时候只是希望在内部用户之间进行分享,不希望暴露出去.这种情况下,就有必要搭建一个本地 ...

  10. 03: 使用docker搭建Harbor私有镜像仓库

    1.1 harbor介绍 1.Harbor简介 1. Harbor是一个用于存储和分发Docker镜像的企业级Registry服务器. 2. 镜像的存储harbor使用的是官方的docker regi ...

随机推荐

  1. 02 | 顶层对象和global对象

    顶层对象的属性 顶层对象,在浏览器环境指的是window对象,在Node指的是global对象.ES5之中,顶层对象的属性与全局变量是等价的. window.a = 1; a // 1 a = 2; ...

  2. vuex配置token和用户信息

    首先设计的是登录成功后端产生token,前端取出放在Local Storage,便于后面每个请求默认带上这里的token以及取用户相关信息 和main.js同级建store.js文件,代码如下 imp ...

  3. (十.7) JDBC(使用IDEA连接数据库)

    写SQL语句: 调出mysqlconsole alt + 8 ok,完毕.

  4. c++学习笔记5(函数的缺省参数)

    例: void func(int x1,int x2=2,int x3=3){} func (10)//等效于func (10,2,3) func (10,8)//等效于func (10,8,3) f ...

  5. 如何用命令行编译c++程序

    作为程序员,如果仅仅只懂得如何在IDE上拖控件写程序,而不知道如何直接通过编译器编译程序的话.虽然说也没啥大不了的,但是如果掌握了手动编译的技能,那肯定会是一种炫技般的存在.从客观的角度来讲,一方面, ...

  6. 问题 N: 非洲小孩

    题目描述 家住非洲的小孩,都很黑.为什么呢? 第一,他们地处热带,太阳辐射严重. 第二,他们不经常洗澡.(常年缺水,怎么洗澡.) 现在,在一个非洲部落里,他们只有一个地方洗澡,并且,洗澡时间很短,瞬间 ...

  7. Go语言核心36讲(Go语言实战与应用五)--学习笔记

    27 | 条件变量sync.Cond (上) 前导内容:条件变量与互斥锁 我们常常会把条件变量这个同步工具拿来与互斥锁一起讨论.实际上,条件变量是基于互斥锁的,它必须有互斥锁的支撑才能发挥作用. 条件 ...

  8. java 获得 微信 UserId

    .... public String cs() throws Exception{ /*访问页面,服务器会得到 code(request.getParameter("code")) ...

  9. [loj2245]魔法森林

    枚举携带的"A型守护精灵"数$A_{0}$,那么即只能经过$A_{i}\le A_{0}$的边,并最小化1到$n$路径上最大的$B_{i}$ 将所有边按照$A_{i}$从小到大排序 ...

  10. [nfls338]基本字典子串

    1.前置知识 以下数字未特殊说明,取值范围均与$N$​​​取交 以下字符串未特殊说明,下标均从1开始,且均为非空串,复杂度中的$n$​​​指字符串长度 周期和border 对于非空集合$S$,定义$\ ...