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. 四. 几个Promise常用API的介绍与使用

    四. 几个常用API的介绍与使用 1. Promise构造函数:Promise(excutor){} excutor函数:同步执行 (resolve, reject) => {} resolve ...

  2. vue修改启动的端口和host

    打开vue项目(dev) dev/config/ 路径修改index.js文件 然后对host和pord修改指定的即可 host: 'localhost', // can be overwritten ...

  3. go条件语句

    1. if else package main import "fmt" func main(){ a :=123 if a>100{ fmt.prinln("大于 ...

  4. HCNP Routing&Switching之BGP路由过滤和AS-Path-Filter

    前文我们聊了下通过修改BGP路由属性来影响路由,从而达到控制BGP路由的目的:回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15495585.html:今天我们 ...

  5. [第二章]c++学习笔记4(复制构造函数)

    性质 (1)只有一个参数,即被同类对象的引用. 注 起作用的三种情况 注 常量引用参数

  6. 问题 N: 非洲小孩

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

  7. UE4中C++编程(一)

    一: C++工程和Gameplay框架 GameInstance 它适合放置独立于关卡的信息,比如说显示UI. GameMode 表示游戏玩法, 包含游戏进行的规则和胜利条件等等信息,游戏模式是和关卡 ...

  8. 在 Kubernetes 上安装 Gitlab CI Runner Gitlab CI 基本概念以及 Runner 的安装

    简介 从 Gitlab 8.0 开始,Gitlab CI 就已经集成在 Gitlab 中,我们只要在项目中添加一个.gitlab-ci.yml文件,然后添加一个Runner,即可进行持续集成.在介绍 ...

  9. [atARC094D]Worst Case

    首先,容易证明满足条件的$ip_{i}$必然是一个前缀 将其看成一张二分图,$i$向满足$ip_{i}<xy$的$p_{i}$连边,即找到一个前缀满足其有完美匹配 二分枚举前缀长度$k$,根据h ...

  10. [loj3367]装饼干

    先考虑如何判定一个$y$是否可行--从高位开始,记录这一位所需要的$2^{i}$数量$t$,若$y$的这一位为1,则$t+=x$,之后分两类讨论:1.$t\le a_{i}$,令$t=0$:2.$b& ...