centos7构建docker私有镜像仓库(代码片段)

author author     2022-12-31     247

关键词:

容器镜像的管理主要围绕镜像仓库(Registry)来进行。在实际应用中,无论开发人员或CI系统发布镜像,还是测试人员或运维人员下载镜像,都要通过镜像仓库来完成。镜像仓库分为公有仓库和私有仓库两种,例如Docker Hub就属于公有仓库,公有仓库的优点是可以直接使用,无须自己维护。但考虑到访问效率和镜像安全等方面的原因,企业可构建自己内部的私有仓库,供内部员工上传、下载镜像使用。
系统环境:

服务器 操作系统 IP地址 已安装软件
docker仓库主机 Centos 7.5 64位 192.168.2.225 docker-ce-18.06.1.ce
docker主机 Centos 7.5 64位 192.168.2.226 docker-ce-18.06.1.ce

一、构建私有仓库

1、下载registry镜像
docker pull registry
技术分享图片
2、创建容器并运行
docker run -itd -p 192.168.2.225:5000:5000 -v /data/docker/registry:/var/lib/registry --restart=always --name registry registry:latest
技术分享图片
参数说明:
-itd:开启交互模式,分配一个伪终端,以后台方式运行
-p:把容器的5000端口映射到宿主机指定IP的5000端口上
-v:把容器的/var/lib/registry目录映射到宿主机的/data/docker/registry目录,/var/lib/registry是容器中存放镜像文件的目录,来实现数据的持久化
--restart=always:重启策略,容器异常退出会自动重启容器
--name:指定容器的名称为registry
3、查看仓库中的镜像
curl http://192.168.2.225:5000/v2/_catalog
技术分享图片
因为才刚运行,还未上传任何镜像,所以是空的

二、测试(另一台docker主机上操作)

1、将之前创建好的镜像打个标签
注:centos/httpd:test是我上一篇博文里制作的镜像,http://blog.51cto.com/andyxu/2174652
docker tag centos/httpd:test 192.168.2.225:5000/httpd-test:v1
技术分享图片
参数说明:
tag:标记本地镜像,将其归于某一个仓库
centos/httpd:test是源镜像和标记信息
192.168.2.225:5000/httpd-test:v1是目标镜像,包含私有仓库的IP和端口
2、修改配置文件,添加私有仓库地址
vim /etc/docker/daemon.json


  "registry-mirrors": ["https://registry.docker-cn.com"], "graph": "/data/docker",
  "insecure-registries": ["192.168.2.225:5000"]

3、重启docker服务
systemctl restart docker
4、将镜像上传到私有仓库
docker push 192.168.2.225:5000/httpd-test:v1
技术分享图片
5、查看私有仓库中的镜像
查看所有镜像
curl http://192.168.2.225:5000/v2/_catalog
技术分享图片
查看httpd-test镜像有哪些tags
curl http://192.168.2.225:5000/v2/httpd-test/tags/list
技术分享图片
6、将本地镜像打包成tar文件,保存到/tmp/目录下
docker save -o /tmp/httpd-test-v3.tar 192.168.2.225:5000/httpd-test
技术分享图片
参数说明:
save:将指定镜像保存成tar归档文件
-o:目标文件,可使用绝对路径和相对路径
7、删除已经打过包的本地镜像
docker rmi -f 192.168.2.225:5000/httpd-test:v1 centos/httpd:test
技术分享图片
8、从私有仓库下载httpd-test镜像
docker pull 192.168.2.225:5000/httpd-test:v1
技术分享图片
9、创建并启动容器
docker run -itd --privileged --restart=always --name httpd_test -p 80:80 192.168.2.225:5000/httpd-test:v1 /usr/sbin/init
技术分享图片
注:具体参数使用请参考我的上一篇部署博文http://blog.51cto.com/andyxu/2174652
10、通过浏览器访问http://192.168.2.226
技术分享图片
能正常访问到apache主页,OK

docker构建私有镜像仓库(代码片段)

title:Docker构建私有镜像仓库(6)date:2018-12-1808:47:27tags:Dockercategories:Dockercopyright:true---Docker是基于Go语言实现的开源容器项目,Docker让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可... 查看详情

centos7构建https访问的docker私有仓库(代码片段)

测试在局域网机器上测试的,IP为192.168.22.65,以下内容均可替换成自己的机器IP。测试docker-ce版本:18.09.3-rc1安装docker环境,并拉取仓库镜像registry①yuminstalldocker-ce②dockerpullregistry:latest利用openssl库生成认证证书①m... 查看详情

centos7docker私有仓库搭建(代码片段)

Centos7Docker私有仓库搭建仓库:集中存放镜像的地方,可分为公共仓库和私有仓库(公共仓库"http://hub.docker.com"或国内的"http://www.daocloud.io")注册服务器才是存放仓库具体的服务器(Registry),每个服务器上都可以放置多个... 查看详情

docker学习记录-构建私有镜像仓库-harbor(代码片段)

Docker学习记录-构建私有镜像仓库-harbor一、前置条件安装docker安装docker-compose注意:harbor对docker要求版本比较高,请安装最新版本 二、下载harbor安装包download  中 harbor-offline-installer对应的版本。 三、上传到服务... 查看详情

企业运维实战--最全docker学习笔记1.docker简介安装部署镜像构建dockerfile详解镜像构建镜像优化本地私有仓库搭建(代码片段)

...业运维实战--Docker学习笔记1.Docker简介、安装部署、镜像构建、Dockerfile详解、镜像构建、镜像优化、本地私有仓库搭建前言--Docker简介一、Docker安装部署二、镜像的构建三、Dockerfile详解四、镜像构建--nginx五、镜像优化六、本地私... 查看详情

docker|第六章:构建私有仓库(代码片段)

...上一章节,讲解了利用Dockerfile和commit进行自定义镜像的构建。大部分时候,公司运维或者实施部门在构建了符合公司业务的镜像环境后,一般上不会上传到公共资源库的。这就需要自己搭建一个私有仓库,来存放自己的镜像数... 查看详情

docker构建私有仓库(代码片段)

...on-reload[[email protected]~]#systemctlrestartdocker下面的步骤将构建一个私有仓库下载官方提供的私用仓库镜像,和一个用于测试的镜像:#下载私用仓库镜像[[email protected]~]#dockerpullregist 查看详情

构建docker私有仓库gitlab仓库和持续集成环境

...stry来构建私有仓库。首先要关闭防火墙、开启IP转发,在CentOS7上IP转发是禁用的。650) 查看详情

centos7.1搭建docker私有仓库

...仓库环境准备:IP角色系统192.168.0.100registry 镜像仓库centos7.1192.168.0.101ngi 查看详情

在docker中创建私有仓库(代码片段)

...码并在邮件中进行激活就可以上传自己的镜像。那么怎么构建属于自己的私有仓库呢?可以使用registry来搭建本地私有仓库。步骤下载reg 查看详情

docker-registry构建私有的镜像仓库

docker-registry是官方提供的工具,可以用于构建私有的镜像仓库。1.安装运行docker-registry可以通过获取官方registry镜像来运行。默认情况下,仓库会被创建在容器的/var/lib/registry目录下。可以通过-v参数来将镜像文件存放在本地的指... 查看详情

手动搭建docker本地私有镜像仓库(代码片段)

实验环境:两个Centos7虚拟机,一个是Server,用作客户端,另一个是Registry,用作Docker私有镜像仓库。基础配置查看一下两台虚拟机的IP地址Server的IP地址是192.168.134.151.Registry的IP地址是192.168.134.150.使用setenforce0临时关闭SElinux。打... 查看详情

docker数据管理与网络通信之私有仓库建立(代码片段)

...库呢?可以使用registry来搭建本地私有仓库。首先需要在构建私有仓库的服务器上下载registry镜像dockerpullregistry在/etc/docker/目录 查看详情

centos7搭建harbor私有仓库(代码片段)

1说明前文Centos7搭建DockerRegistry介绍了DockerRegistry的搭建,但它没有UI页面,因此选择Harbor以下基于镜像CentOS-7-x86_64-Minimal-1804进行搭建均已root用户进行操作2安装docker和docker-compose参见Centos7安装DockerCE安装Docker引擎2.1安装docker-compose... 查看详情

docker搭建私有仓库之registry(代码片段)

...供私人使用。*docker-registry是官方提供的工具,可以用于构建私有的镜像仓库。注:*随着docker使用的镜像越来越多,就需要有一个保存镜像的地方,这就是仓库。*目前常用的两种仓库:公共仓库和私有仓库。最方便的就是使用公... 查看详情

docker构建私有仓库(代码片段)

HTTP版本:http版本的非常简单,直接运行一条命令即可dockerrun-d-p5000:5000--restart=always--nameregistryregistryhttp的仓库想要上传镜像需要配置一下,否则会push失败:vim/etc/docker/daemon.json#添加"insecure-regist 查看详情

docker--构建镜像私有仓库registry数据卷端口映射(代码片段)

Docker入门之构建镜像、私有仓库registry、数据卷、端口映射一、构建自定义镜像的方式1.Dockerfile(基于源镜像修改配置,用Dockerfile生成自己需要的镜像),用于新的业务2.基于已有的镜像容器进行创建,常用在业务升级上面。3.... 查看详情

centos7构建https访问的docker私有仓库(代码片段)

测试在局域网机器上测试的,IP为192.168.22.65,以下内容均可替换成自己的机器IP。测试docker-ce版本:18.09.3-rc1安装docker环境,并拉取仓库镜像registry①yuminstalldocker-ce②dockerpullregistry:latest利用openssl库生成认证证书①m... 查看详情