在CentOS上的Docker私有注册表
目录
介绍
必要条件
私有Docker注册表设置
客户机上需要的操作
介绍
大多数IT公司都不会向生产系统提供互联网设施,但Docker hub需要互联网,而且安全性较低(所有人都可以使用)。为了保护我们的Docker镜像,我们必须在私有Docker注册表中本地化保存图像。
当我们的环境中有大量的docker主机时,在内部网络中创建我们自己的私有Docker 注册表有助于我们从私有服务器管理映像,而无需为docker客户端提供Internet访问。
必要条件
- Docker注册表主机:k8s-master.com
- 客户:k8s-client.com
- 操作系统:CentOS
- Docker版本:18.06
- Internet:需要在注册表服务器上从Docker hub中提取映像
注意:对于Docker私有注册表,Docker注册表和客户机都必须安装Docker。
私有Docker注册表设置
1、如果您没有TTL证书,请创建一个目录并将TTL证书放在该目录中,创建SSL证书以保护我们的Docker私有注册表:
mkdir -p /data/certs
cp domain.crt domain.key /data/certs/
openssl req \-newkey rsa:4096 -nodes -sha256 -keyout /data/certs/domain.key \-x509 -days 365 -out /data/certs/domain.crt (if you don't have original TTL Certificates).
2、创建一个存储Docker镜像的目录:
mkdir -p /data/images
3、在docker主机中运行Docker注册表容器:
docker run -d -p 6000:5000 \
-v /data/images:/var/lib/registry \
-v /data/certs:/certs \
-e REGISTRY_HTTP_TLS_CERTIFICATE=/certs/domain.crt \
-e REGISTRY_HTTP_TLS_KEY=/certs/domain.key \
--restart on-failure \
--name registry \
docker.io/registry
4、检查主机上的Docker注册表容器状态和linux中的侦听端口:
docker ps
netstat -tulpn | grep 6000
5、从Docker hub中提取图像并将其推送到私有Docker hub:
docker pull nginx
docker tag nginx localhost:6000/nginx
6、验证Docker镜像是否已推送到私有注册表:
ll data/images/docker/registry/v2/repositories/
7、将TTL证书从主机复制到客户端计算机:
scp -r /data/certs/* <IP-Addr-Clent>:/root/
客户机上需要的操作
1、Docker客户端使用我们的TTL / SSL证书。
mkdir -p /etc/docker/certs.d/k8s-master.com:6000/
cp -rf /root/tcsmkrishi.crt /etc/docker/certs.d/k8s-master.com:6000/
2、从docker私有注册表中提取图像并使用它。
docker pull k8s-master.com:6000/nginx
docker push k8s-master.com:6000/nginx
原文地址:https://www.codeproject.com/Tips/1277381/Docker-Private-Registry-on-CentOS
在CentOS上的Docker私有注册表相关推荐
- CentOS上安装Docker及docker常用命令
这里写目录标题 一.在CentOS上安装Docker Engine 1.Docker Engine安装 1.1 卸载以前的docker 1.2 安装方法 1.2.1 用repository方法安装 0 ...
- win7 java注册表_使用JAVA和JNA在64位Win 7上读/写Windows注册表
我正在尝试使用JAVA在64位Win7上读/写 Windows注册表. 首先,我尝试了JDK java.util.prefs.Preferences and its reflection usage. ...
- 史上很全的注册表修改大全
史上很全的注册表修改大全 请使用 Ctrl+F 键来查找你想要的 不想别人使用你电脑的某些功能,或是在网吧想使用某些功能,或是让自己的电脑速度更快 怎么办 如果你有点注册表的知识就OK拉 没有多深奥 ...
- 在CentOS上安装Docker的步骤
在CentOS上安装Docker的步骤如下: 更新系统: sudo yum update 添加Docker官方存储库: sudo yum install -y yum-utils sudo yum-c ...
- CentOS上安装Docker (图解)
更简单的办法:三分钟装好 Docker ( 图解) 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家.点击跳转到教程. // 用上面那个办法吧,简单多了,下面这个方法看 ...
- 好累!iTunes安装不上,UNKNOW\Components...,以及注册表“注册表编辑器无法在当前所选的项及其部分子项上设置安全性”,注册表某项打不开、删不掉,所有问题,都在此终结!
这个问题困扰了我好几天,每天网上各种搜方法,全都没有用! 本来只是想装一个低版本的iTunes,结果牵出来这么一大坨东西. 第一个问题:安装到一半,程序要写注册表的时候,提示UNKNOW\Compon ...
- 【Docker】在CentOS上安装Docker Engine
前提条件 操作系统要求 要安装Docker Engine,您需要CentOS 7的维护版本.不支持或未测试存档版本. 该centos-extras库必须启用.默认情况下,此存储库是启用的,但是如果已禁 ...
- Docker系列 一. CentOS上安装Docker
1.环境&工具: 阿里云轻量级服务器.Centos7系统.FinalShell(其他连接客户端也可以) 2.步骤: 2.1 安装docker 2.1.1 以root身份登录服务器 2.1.2查 ...
- CentOS上使用Docker安装Redis-Cluster (redis6.x)
第一步 安装最新版Docker.Docker-Compose yum remove docker docker-client docker-client-latest docker-common do ...
最新文章
- ASP.NET MVC 4 中的JSON数据交互总结
- 查看文档(API) (NSString)
- Linux(内核和用户态的)动态内存管理
- thinkphp中mysql添加数据_thinkphp添加数据 add()方法
- C语言入夏标志,青岛真的入夏了吗?青岛20°C的梗是什么?
- Kryo为什么比Hessian快
- 数据科学和人工智能技术笔记 一、向量、矩阵和数组
- python静态方法和类方法的区别_python中类的静态方法和类的类方法
- Window.location.href命令在JS中跳转无效或自动忽略
- 2022电工杯:5G 网络环境下应急物资配送问题(优化)
- mysql建表与oracle_mysql和oracle建表语句以及数据类型的区别
- Word 转 PDF 后目录链接无效的解决办法
- 【金融市场基础知识】——中国的金融体系(二)
- 简单介绍线上点餐APP开发用途
- 数据仓库基本概念介绍
- 人工智能与智能的异同
- Mentor Graphics IPC-7351 LP Viewer 10.5使用说明
- android中bitmap压缩的几种方法详解
- scrapy splash模拟点击
- 5、求方程的根的两种方法