一、前言

Docker官方镜像仓库 访问速度很慢,Docker Registry允许搭建我们自己的镜像仓库,为实现镜像拉取、推送提供便利。

二、安装与启动

1、创建目录

mkdir /usr/local/docker
cd /usr/local/docker

2、编辑docker-compose.yml

version: "3.7"
services:
registry:
restart: always
image: registry
container_name: registry
ports:
- 5000:5000
volumes:
- /usr/local/docker/registry-data:/var/lib/registry
  • image : 容器依据的镜像为registry
  • container_name : 容器名称
  • ports : 端口映射
  • volumes : 映射数据卷

3、启动容器

docker-compose up -d

三、验证是否启动成功

浏览器访问 http://<host address>:5000/v2/,正常情况会返回空的json对象。

四、Registry测试使用

1、先从官方镜像拉取ubuntu

docker pull ubuntu

2、为镜像打上tag,创建自己的镜像

docker tag ubuntu 192.168.172.143:5000/ubuntu

命名方式:ip:port/image_name:version

表示一会推送到镜像服务器时,使用这个ip、端口配置

3、查看刚才的镜像

docker images

4、配置镜像服务器地址

vi /etc/docker/daemon.json
内容如下:
{
"registry-mirrors": [
"<your acccelerate address>"
],
"insecure-registries": [
"192.168.172.143:5000"
]
}
重启服务:
service docker restart

第一个为阿里云容器镜像加速地址,第二个为新增的自己的镜像服务器地址。

5、验证配置

docker info

Insecure Registries节点是否多了一个配置。

6、推送镜像

docker push 192.168.172.143:5000/ubuntu

7、查看镜像

浏览器查看: http://192.168.172.143:5000/v2/_catalog

终端访问: curl -XGET http://192.168.172.143:5000/v2/_catalog

8、拉取镜像

先删除本地镜像
docker rmi ubuntu 192.168.172.143:5000/ubuntu
拉取
docker pull 192.168.172.143:5000/ubuntu

五、Registry图形界面

docker registry本身不提供图形界面,为方便操作,需要安装第三方的图形界面 :Docker-Registry-Frontend

1、安装

修改docker-compose.yml
version: "3.7"
services:
registry:
restart: always
image: registry
container_name: registry
ports:
- 5000:5000
volumes:
- /usr/local/docker/registry-data:/var/lib/registry
registry-ui:
restart: always
image: konradkleine/docker-registry-frontend:v2
container_name: registry-ui
environment:
ENV_DOCKER_REGISTRY_HOST: 192.168.172.143
ENV_DOCKER_REGISTRY_PORT: 5000
ports:
- 8080:80
volumes:
- /usr/local/docker/registry/server.crt:/etc/apache2/server.crt:ro
- /usr/local/docker/registry-ui/server.key:/etc/apache2/server.key:ro 删除已经存在的容器
docker rm $(docker ps -aq)
  • ENV_DOCKER_REGISTRY_HOST : 镜像服务器地址
  • ENV_DOCKER_REGISTRY_PORT : 镜像服务器端口

2、重新启动

docker-compose up -d

3、访问

浏览器访问:http://192.168.172.143:8080/ 即可

4、测试

推送
docker push 192.168.172.143:5000/ubuntu
修改tag再次推送
docker tag 192.168.172.143:5000/ubuntu 192.168.172.143:5000/ubuntu:8.0.0
docker push 192.168.172.143:5000/ubuntu:8.0.0

访问: http://192.168.172.143:8080/可以看到两个版本的ubuntu.

Docker Registry搭建的更多相关文章

  1. Docker Registry搭建私有仓库

    利用Registry镜像搭建Docker私有仓库遇到了很多坑,说来也是找到的资料都是杂而不精的东西,所以也没少走了弯路,现在回过头看去感觉好多坑还是别人给挖的··· 不过努力的最终结果还是好的,因为找 ...

  2. docker registry 搭建

    registry 搭建 假设在 cd /root 目录下 最新 docker run -d -p 5000:5000 -v pwd/data:/var/lib/registry --restart=a ...

  3. docker(五) 使用Docker Registry搭建镜像私服

    1.创建私服 docker run -d --name registry -v /opt/data/registry:/var/lib/registry -p 5000:5000 registry - ...

  4. learning docker steps(7) ----- docker registry 搭建

    参考: https://docs.docker.com/engine/reference/builder/ https://hub.docker.com/_/registry/ https://www ...

  5. Docker——Registry搭建私有镜像仓库

    前言 在 Docker 中,当我们执行 docker pull xxx 的时候,它实际上是从 registry.hub.docker.com 这个地址去查找,这就是Docker公司为我们提供的公共仓库 ...

  6. Ubuntu Docker Registry 搭建私有仓库

    服务器版本 Ubuntu 16.04 LTS. 安装命令: $ docker run -d -v /opt/registry:/var/lib/registry -p 5000:5000 --rest ...

  7. 搭建私服-docker registry

    Docke官方提供了Docker Hub网站来作为一个公开的集中仓库.然而,本地访问Docker Hub速度往往很慢,并且很多时候我们需要一个本地的私有仓库只供网内使用.Docker仓库实际上提供两方 ...

  8. Docker registry V2

    部署私有Docker Registry 搭建 Insecure Registry 修改Registry server上的Docker daemon的配置,为DOCKER_OPTS增加–insecure ...

  9. 在Ubuntu14.04系统POWER8服务器上搭建Docker Registry服务

    本文描述了如何在POWER8服务器上搭建一个本地化的Docker镜像仓库,主要涉及镜像制作,Docker Registry服务启动等.希望能够对在非X86服务器上搭建Docker仓库的同学提供参考. ...

随机推荐

  1. (六)爬虫之使用selenium

    selenium是使用javascript编写,主要用来进行web应用程序测试,在python爬虫中可以用来进行动态网页爬取,解决爬虫中的javascript渲染(执行js语句).总结记录下,以备后面 ...

  2. Thymeleaf th:include、th:replace引用

    <html xmlns="http://www.w3.org/1999/xhtml" xmlns:th="http://www.thymeleaf.org" ...

  3. Redis | 一文轻松搞懂redis集群原理及搭建与使用

    转载:https://juejin.im/post/5ad54d76f265da23970759d3 作者:SnailClimb 这里总结一下redis集群的搭建以便日后所需同时也希望能对你有所帮助. ...

  4. CDN概念

    CDN的全称是Content Delivery Network,即内容分发网络.其目的是通过在现有的Internet中增加一层新的网络架构,将网站的内容发布到最接近用户的网络"边缘" ...

  5. vue 高德地图

    index.html <link rel="stylesheet" href="http://cache.amap.com/lbs/static/main1119. ...

  6. cs6.8-oracle挂载ceph

    https://ceph-users.ceph.narkive.com/EgcYJhbG/hammer-0-94-1-still-getting-feature-set-mismatch-for-ce ...

  7. C++ STL 排序

    #include <iostream>#include <algorithm>#include <deque>#include <vector>#inc ...

  8. kafka-sparkstreaming---学习1

    ---恢复内容开始--- import java.util.*; import org.apache.spark.SparkConf; import org.apache.spark.TaskCont ...

  9. 第一章 python+selenium自动化测试实战

    @序章 自动化测试是软件测试的主流方向之一: 教程从测试的根本需求出发,讲解如何开展自动化测试. 首先,我们要明白,自动化仅仅是满足我们某种需求的一种工具:没有必要花费时间把它全部弄懂:我们只需要学会 ...

  10. 【ARM-Linux开发】内核3.x版本之后设备树机制

    内核3.x版本之后设备树机制 Based  on  Linux  3.10.24  source  code  参考/documentation/devicetree/Booting-without- ...