利用docker实现私有镜像仓库

时间:2022-04-05 05:18:19

利用docker实现私有镜像仓库

在linux服务器上安装了docker过后,可以拉取docker镜像仓库:

  

docker pull registry

再执行命令让镜像run起来:

 docker run -d -p : -v /opt/data/registry:/tmp/registry registry

通过docker ps能够看到正在运行的容器:

利用docker实现私有镜像仓库

当jenkins执行pipeline或者jenkinsfile的时候,会执行 docker push生成的应用程序镜      像到这个私有仓库。所以要在jenkins的服务器推送镜像时:

  推送到自己的私有镜像仓库中:

docker push 192.168.50.178:/tomcat

  当然,报错了,我们来看看是什么错:

  Get https://192.168.50.178:5000/v2/: http: server gave HTTP response to HTTPS client

  因为提交镜像仓库的时候,docker默认是按照https来的,但是我们这里是http,所以可以通过配置修改信任:

  在你的推送docker服务器和docker私有镜像仓库的服务器都要同时修改配置文件:

vim /etc/docker/daemon.json

  添加如下代码行:

  利用docker实现私有镜像仓库

  再次重启docker服务,这一次就可以推送成功了。

  利用docker实现私有镜像仓库

  如果想拉取这个镜像,可以执行如下命令行:

  利用docker实现私有镜像仓库

  其实,这里比较痛苦的是删除镜像,由于出于安全考虑,这里默认是没法删除镜像的,我们只能利用其它的方式删除:利用delete_docker_registry_image删除,下面是配置过程:

  

curl https://raw.githubusercontent.com/burnettk/delete-docker-registry-image/master/delete_docker_registry_image.py | sudo tee /usr/local/bin/delete_docker_registry_image >/dev/null
sudo chmod a+x /usr/local/bin/delete_docker_registry_image
 

  再配置环境变量:

    找到registry的如下目录:

    利用docker实现私有镜像仓库

  配置镜像仓库:

export      REGISTRY_DATA_DIR=/var/lib/docker/volumes/9f99d08ed9abf43a9204a1d9cda556fc5dc6baeb9d82b0de88684e513d516bcb/_data/docker/registry/v2

  

  配置完过后,再次执行删除命令:

/usr/local/bin/delete_docker_registry_image -i tomcat

  查看是否删除了:

curl -XGET http://192.168.50.178:5000/v2/_catalog

  如果说你执行 /usr/local/bin/delete_docker_registry_image报错,说找不到python,那么可能是你用的是python3,改为python2就好了

当然,这个是自己搭建的私有镜像仓库,不是很好用,大家可以用一些开源的docker镜像仓库,还有ui界面,显示更加友好一点,比如说:Harbor.大家可以去用一用,很好用的。

利用docker实现私有镜像仓库的更多相关文章

  1. 搭建docker registry私有镜像仓库

    搭建docker registry私有镜像仓库 一.安装docker-distribution yum install -y docker-distribution 安装完成后,启动服务: syste ...

  2. 手动搭建Docker本地私有镜像仓库

    实验环境:两个Centos7虚拟机,一个是Server,用作客户端,另一个是Registry,用作Docker私有镜像仓库. 基础配置 查看一下两台虚拟机的IP地址 Server的IP地址是192.1 ...

  3. Docker 构建私有镜像仓库

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

  4. docker实战——Docker本地私有镜像仓库Harbor搭建及配置

    Harbor介绍 Docker容器应用的开发和运行离不开可靠的镜像管理,虽然docker官方提供了公共的镜像仓库(Docker Hub),但是从安全和效率等方面考虑,部署我们私有环境内的Registr ...

  5. docker配置私有镜像仓库-registry和hyper/docker-registry-web

    1.前言️​ Docker hub是远程仓库,是国外的,push pull速度特别慢,尤其是网速不好的时候,页面都点不进去,官网 但是可以配置阿里云镜像加速哦: 因此搭建一个私有的镜像仓库用于管理我们 ...

  6. 容器技术之Docker私有镜像仓库docker-distribution

    在前边的博客中我们说到docker的架构由docker客户端.服务端以及仓库组成:docker仓库就是用来存放镜像的地方:其实docker registry我们理解为存放docker镜像仓库的仓库比较 ...

  7. 容器技术之Docker私有镜像仓库harbor

    前文我们聊到了docker的私有镜像仓库docker-distribution的搭建和简单的使用,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/13058338 ...

  8. 使用Nexus3构建Docker私有镜像仓库

    一.安装Nexus3 Nexus3是Sonatype提供的仓库管理平台,Nuexus Repository OSS3能够支持Maven.npm.Docker.YUM.Helm等格式数据的存储和发布:并 ...

  9. 详解docker实战之搭建私有镜像仓库 - kurbernetes

    1.实战目的 搭建企业私有的镜像仓库,满足从开发环境推送和拉取镜像.当我们使用k8s来编排和调度容器时,操作的基本单位是镜像,所以需要从仓库去拉取镜像到当前的工作节点.本来使用公共的docker hu ...

随机推荐

  1. 关于JavaScript的判断语句(1)

    if语句: if( 判断条件 ){ 判断结果为true执行语句: } if...else语句: if(判断条件){ 判断结果为true时执行的语句: }else{ 判断结果为false时执行语句: } ...

  2. DataGridView中添加CheckBox列用于选择行

    DataGridView中添加CheckBox列用于选择行 1,编辑DataGridView,添加一列 CheckBox ,Name 赋值为 "select",如下图: 2,取消 ...

  3. 网页html结构右侧栏固定,左侧自适应大小。

    最近写了一个项目,写页面的结构,html树形结构是有header,container,footer部分,其中container部分是右侧栏是固定宽度,左侧是自适应宽度与屏幕高度. 第一次写的博客文章是 ...

  4. MVC 点击下载文档

    动态生成的List,view页面: <a href=\"#\" class=\"onlyedu-btn\" id=\"downloadError ...

  5. Spring 3&period;0 &plus; Atomikos构建jta分布式事务

    Spring3.0已经不再支持jtom了,不过我们可以用第三方开源软件atomikos(http://www.atomikos.com/)来实现.Atomikos是目前在分布式事务管理中做得相当不错的 ...

  6. 强悍的跨平台开源多媒体中心XBMC介绍

    强悍的跨平台开源多媒体中心XBMC介绍 最近都在了解Android下的音视频,因为最近需要做一个多媒体中心的APP,其中了解了一个开源项目XMBC,一个十分强大的开源多媒体中心,而且可以应用在多个平台 ...

  7. 使用EL表达式调用java方法

    首先,新建一个类,类中写一个静态方法 public class PrivilegeUtils { public static Boolean checkPrivilegeByName(User use ...

  8. noip2011 玛雅游戏 大模拟

    深搜+模拟 需要剪枝:同一移动向右移了就不需要向左移了 #include<cstdio> #include<cstring> #include<iostream> ...

  9. MySQL 支持的数据类型

    1.数值类型 MySQL 支持所有标准 SQL 中的数值类型,其中包括严格数值类型(integer.smallint.decimal.numeric),以及近似数值数据类型(float.real.do ...

  10. Java-Shiro(四):Shiro

    https://blog.csdn.net/visket2008/article/details/78539334 不错的视屏教程,很实用:https://www.bilibili.com/video ...