CentOS7构建docker私服管理镜像
使用私有仓库管理镜像
很多场景下,需要使用docker私服管理镜像。相比Docker Hub 私有仓库有以下优势:
- 节省带宽,对于私有仓库已有的镜像无需从Docker Hub 上下载,秩序从私有仓库中下载即可
- 更加安全。无需网络服务
- 便于内部镜像的统一管理
可以使用docker-degistry项目或Docker Registry2.0 来搭建私有仓库,但docker-degistry一倍官方标记为过时项目,不建议使用
以下使用Docker Registry2.0 来搭建一个私有的Docker仓库
构建docker私服
搭建Docker Degistry2.0非常简单,只需执行以下命令即可新建并启动一个Docker Registry2.0仓库
[root@master ~]# docker run -d -p 5000:5000 --restart=always --name registry2 registry:2
Unable to find image 'registry:2' locally
2: Pulling from library/registry
486039affc0a: Pull complete
ba51a3b098e6: Pull complete
8bb4c43d6c8e: Pull complete
6f5f453e5f2d: Pull complete
42bc10b72f42: Pull complete
Digest: sha256:7d081088e4bfd632a88e3f3bcd9e007ef44a796fddfe3261407a3f9f04abe1e7
Status: Downloaded newer image for registry:2
39cbd3fb984f67a64f64cdbd442a42d5680113611a4fa799e2e59699f80d3265[root@master ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS
39cbd3fb984f registry:2 "/entrypoint.sh /etc…" About an hour ago Up 58 minutes
PORTS NAMES
0.0.0.0:5000->5000/tcp registry2
推送镜像
[root@localhost~]# docker push eurekaserver:eureka
推送没有成功,出现如下提示:
The push refers to repository [docker.io/library/eurekaserver]
Get https://registry-1.docker.io/v2/: dial tcp: lookup registry-1.docker.io on 192.168.18.2:53: no such host
docker push 默认推送到Docker Hub上,所以 docker push eurekaserver:eureka 相当于 docker push docker.io/eurekaserver:eureka,因此,需要修改镜像标签,命令如下
[root@localhost~]# docker tag eurekaserver:eureka 192.168.18.145:5000/eurekaserver:eureka[root@localhost~]#docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
192.168.18.145:5000/eurekaserver eureka 809e0f84003b 43 hours ago 696MB
eurekaserver eureka 809e0f84003b 43 hours ago 696MB
master:5000/eurekaserver eureka 809e0f84003b 43 hours ago 696MB
registry 2 708bc6af7e5e 2 months ago 25.8MB
java 8 d23bdf5b1b1b 3 years ago 643MB
再执行推送命令:
[root@localhost~]# docker push 192.168.18.145:5000/eurekaserver:eureka
如果还没有推送成功,提示如下:
The push refers to repository [master:5000/eurekaserver]
Get https://master:5000/v2/: http: server gave HTTP response to HTTPS client
解决方法:
在”/etc/docker/“目录下,创建”daemon.json“文件。在文件中写入:
{ "insecure-registries":["192.168.1.100:5000"] }
保存退出后,重启docker。如已有内容使用逗号隔开,问题解决:
执行:
[root@localhost~]# docker push 192.168.18.145:5000/eurekaserver:eureka
The push refers to repository [192.168.18.145:5000/eurekaserver]
709a2b0c223f: Pushed
35c20f26d188: Pushed
c3fe59dd9556: Pushed
6ed1a81ba5b6: Pushed
a3483ce177ce: Pushed
ce6c8756685b: Pushed
30339f20ced0: Pushed
0eb22bfb707d: Pushed
a2ae92ffcd29: Pushed
eureka: digest: sha256:654dbccaf67bd9790cb8258c0c73a010e5f32b22317d7eb15ae5def42882aac3 size: 2212
表示推送成功
三. Docker私有仓库镜像命令
1)查看私有仓库执行此命令:
[root@master ~]# curl -XGET http://192.168.18.145:5000/v2/_catalog
{"repositories":["eurekaserver"]}
2)获取某个镜像的标签列表:
[root@localhost~]# curl -XGEThttp://192.168.18.145:5000/v2/eurekaserver/tags/list
3)下载镜像
[root@localhost~]# docker pull 192.168.18.145:5000/eurekaserver
CentOS7构建docker私服管理镜像相关推荐
- 【Docker】五 Docker Hub管理镜像
Docker Hub管理镜像 1 Docker Hub管理镜像 1.1 注册与登录 1.2 创建仓库 1.3 推送镜像 2 使用Docker Registry管理镜像 2.1 原理图 2.2 搭建Do ...
- centos7安装docker并配置镜像加速
Centos7安装docker 并配置镜像加速 1.如果系统上之前有安装过docker 那么就需要先执行下面的命令 删除旧版本docker sudo yum remove docker \docker ...
- Docker系列教程09-使用Docker Hub管理镜像
为什么80%的码农都做不了架构师?>>> > 原文:<http://www.itmuch.com/docker/09-docker-docker-hub/> ...
- Centos7 解决Docker拉取镜像慢的问题
配置加速Docker镜像源 vi /etc/docker/daemon.json 在配置文件中加入 {"registry-mirrors": ["https://xxx. ...
- 搭建Docker私服
docker-compose.yml version: '3.1' services:registry: image: registry restart: alwayscontainer_name: ...
- CentOS7服务器Docker构建ubuntu镜像出错invalid argument
为什么80%的码农都做不了架构师?>>> #1 发现问题 拿到某云主机时,选择了最新的CentOS 7.2的公共镜像,一些工作过后,开始布暑应用.因为没有使用docker仓库, ...
- Docker安装 下载镜像 部署容器 备份 创建私服
Docker 学习目标: 掌握Docker基础知识,能够理解Docker镜像与容器的概念 完成Docker安装与启动 掌握Docker镜像与容器相关命令 掌握Tomcat Nginx 等软件的常用应用 ...
- 基于Kubernetes构建Docker集群管理详解
from: 基于Kubernetes构建Docker集群管理详解 Kubernetes是Google开源的容器集群管理系统,基于Docker构建一个容器的调度服务,提供资源调度.均衡容灾.服务注册.动 ...
- Docker安装与镜像,容器命令管理
docker和容器的关系 -Docker是完整的一套容器管理系统 -Docker提供了一组命令, 让用户更加方便直接地使用容器技 术,而不需要过多关心底层内核技术 一.Docker的安装 1.配置环境 ...
最新文章
- 实现jquery.ajax及原生的XMLHttpRequest调用WCF服务的方法
- mysql数据导出权限问题
- 反序列化(先序)——split : string--vectorstring
- 钉钉微应用的开发——主前端
- Java_io体系之CharArrayReader、CharArrayWriter简介、走进源码及示例——13
- 【C++grammar】结构化绑定
- lwip连续发数据卡死_Mysteel:12月全球铁矿石发运量稳中微增 进口矿咋走?
- 3个最常见案例详解DBA日常维护
- VBA_输出SQL查询数据
- CLR via C# 中关于装箱拆箱的摘录
- 044、JVM实战总结:高级工程师的硬核技能:JVM的Young GC日志应该怎么看?
- ios13.4.1续航怎么样?
- CNN————激活可能性小的神经元不代表这个神经元的用处小
- C++原型模式和模板模式
- 转:如何在Ubuntu系统下安装使用LaTeX
- 华为研发岗位两轮面试的准备(本科生,已经拿到offer,月薪20k,15薪)
- 台达 PLC 绝对定位
- 海尔构建全球首个智能制造云平台COSMO
- 程序员发布:一张图读懂支撑阿里双十一1682亿的技术架构体系
- 以Python角度学习Javascript(一)