3 docker私有镜像仓库

3.1准备服务器

重新安装CENTOS7,加大磁盘空间。

ip

配置

登录

192.168.168.168

4核虚拟CPU/4G内存/300G磁盘

22/密钥登陆/LCZY@mv-1

3.2服务器初始化

密钥登陆:

防火墙:

sed -i "s#SELINUX=enforcing#SELINUX=disabled#g" /etc/selinux/config

setenforce 0

systemctl stop firewalld

systemctl disable firewalld

Yum源:

vi /etc/yum.repos.d/CentOS-Base.repo

替换163源,见附件。直接清空原有内容,复制粘贴。

亦或上传附件,cat 附件 > /etc/yum.repos.d/CentOS-Base.repo

然后 yum clean all   yum makecache

docker安装,同上1.4.

3.3Docker Registry快速搭建私有镜像

3.3.1拉取镜像

docker pull registry

3.3.2 运行

docker run -d -v /home/registory:/var/lib/registry -p 5000:5000 --restart=always --privileged=true --name registry registry:latest

参数说明

-itd:在容器中打开一个伪终端进行交互操作,并在后台运行;

-v:把宿主机的/home/registory目录绑定 到 容器/var/lib/registry目录(这个目录是registry容器中存放镜像文件的目录),来实现数据的持久化;

-p:映射端口;访问宿主机的5000端口就访问到registry容器的服务了;

--restart=always:这是重启的策略,假如这个容器异常退出会自动重启容器;

--name registry:创建容器命名为registry,你可以随便命名;

registry:latest:这个是刚才pull下来的镜像;

3.3.3使用

3.3.3.1首先拉取nginx镜像。

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

[root@docker-registry ~]# docker pull nginx

Using default tag: latest

latest: Pulling from library/nginx

bc51dd8edc1b: Pull complete

66ba67045f57: Pull complete

bf317aa10aa5: Pull complete

Digest: sha256:ad5552c786f128e389a0263104ae39f3d3c7895579d45ae716f528185b36bc6f

Status: Downloaded newer image for nginx:latest

docker.io/library/nginx:latest

3.3.3.2 tag

将nginx重新tag,注意:“/”前边是你的仓库所在服务器的ip+映射的端口

[root@docker-registry ~]# docker images

REPOSITORY    TAG     IMAGE ID       CREATED        SIZE

nginx          latest   2073e0bcb60e   3 weeks ago     127MB

registry        latest   708bc6af7e5e    4 weeks ago     25.8MB

[root@docker-registry ~]# docker tag nginx:latest 192.168.168.168:5000/nginxtest:latest

[root@docker-registry ~]# docker images

REPOSITORY  TAG      IMAGE ID      CREATED       SIZE

192.168.168.168:5000/nginxtest   latest   2073e0bcb60e  3 weeks ago         127MB

nginx       latest      2073e0bcb60e      3 weeks ago         127MB

registry     latest      708bc6af7e5e       4 weeks ago         25.8MB

3.3.3.3 push上传到私有仓库

[root@docker-registry ~]# docker push 192.168.168.168:5000/nginxtest:latest

The push refers to repository [192.168.168.168:5000/nginxtest]

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

出现报错,原因是docker私有仓库服务器,默认是https协议,所以我们需要进行修改不使用https。因此,修改(若无此文件就创建)

[root@docker-registry ~]# vim /etc/docker/daemon.json

添加:

{

"insecure-registries":["192.168.168.168:5000"]

}

重启docker服务

[root@docker-registry ~]# systemctl daemon-reload

[root@docker-registry ~]# systemctl restart docker

重启后看到我们之前always启动的registry,自动运行。

[root@docker-registry ~]# docker ps

重新上传push操作。成功。

[root@docker-registry ~]# docker push 192.168.168.168:5000/nginxtest:latest

The push refers to repository [192.168.168.168:5000/nginxtest]

22439467ad99: Pushed

b4a29beac87c: Pushed

488dfecc21b1: Pushed

latest: digest: sha256:62f787b94e5faddb79f96c84ac0877aaf28fb325bfc3601b9c0934d4c107ba94 size: 948

3.3.3.4测试拉取功能

首先删除原有的镜像

[root@docker-registry ~]# docker rmi 192.168.168.168:5000/nginxtest:latest

Untagged: 192.168.168.168:5000/nginxtest:latest

Untagged: 192.168.168.168:5000/nginxtest@sha256:62f787b94e5faddb79f96c84ac0877aaf28fb325bfc3601b9c0934d4c107ba94

Deleted: sha256:2073e0bcb60ee98548d313ead5eacbfe16d9054f8800a32bedd859922a99a6e1

Deleted: sha256:a3136fbf38691346715cac8360bcdfca0fff812cede416469653670f04e2cab0

Deleted: sha256:99360ffcb2da18fd9ede194efaf5d4b90e7aee99f45737e918113e6833dcf278

Deleted: sha256:488dfecc21b1bc607e09368d2791cb784cf8c4ec5c05d2952b045b3e0f8cc01e

[root@docker-registry ~]# docker images

REPOSITORY  TAG    IMAGE ID      CREATED         SIZE

registry      latest  708bc6af7e5e   4 weeks ago      25.8MB

尝试拉取镜像操作,发现速度飞快。

[root@docker-registry ~]# docker pull 192.168.168.168:5000/nginxtest:latest

latest: Pulling from nginxtest

bc51dd8edc1b: Pull complete

66ba67045f57: Pull complete

bf317aa10aa5: Pull complete

Digest: sha256:62f787b94e5faddb79f96c84ac0877aaf28fb325bfc3601b9c0934d4c107ba94

Status: Downloaded newer image for 192.168.168.168:5000/nginxtest:latest

192.168.168.168:5000/nginxtest:latest

3.3.4查看

3.3.4.1 私有云docker镜像列表

[root@docker-registry ~]# curl -XGET http://192.168.168.168:5000/v2/_catalog

{"repositories":["nginxtest"]}

3.3.4.2 查看某个镜像的标签列表

[root@docker-registry ~]# curl -XGET http://192.168.168.168:5000/v2/nginxtest/tags/list

{"name":"nginxtest","tags":["latest"]}

3.3.4.3 服务器文件

[root@docker-registry repositories]# ls

nginxtest

[root@docker-registry repositories]# pwd

/home/registory/docker/registry/v2/repositories

2docker私有镜像仓库registry的更多相关文章

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

    搭建 docker run -d -p 5000:5000 --restart=always --name registry2 registry:2 就可以将自己的镜像 push到这个私有的镜像仓库 ...

  2. 8天入门docker系列 —— 第六天 搭建自己的私有镜像仓库Registry

    这一篇我们来聊聊私有仓库的搭建,其实不管你是通过docker build还是compose的方式进行构建,最终还是要将生成好的镜像push到远程的仓库中,这样多个 平台可以方便的获取你registry ...

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

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

  4. [转]Ubuntu18.04下使用Docker Registry快速搭建私有镜像仓库

    本文转自:https://blog.csdn.net/BigData_Mining/article/details/88233015 1.背景 在 Docker 中,当我们执行 docker pull ...

  5. 使用docker Registry快速搭建私有镜像仓库

    当我们执行docker pull xxx的时候,docker默认是从registry.docker.com这个地址上去查找我们所需要的镜像文件,然后执行下载操作.这类的镜像仓库就是docker默认的公 ...

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

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

  7. 基于 registry 搭建 Docker 私有镜像仓库

    今天主要介绍使用 registry 来搭建 Docker私有镜像仓库,方便在公司内部项目中使用,registry 也是 Docker 官方提供的一个镜像,操作也很简单. dockerhub: http ...

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

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

  9. 【Docker】(4)搭建私有镜像仓库

    [Docker](4)搭建私有镜像仓库 说明 1. 这里是通过阿里云,搭建Docker私有镜像仓库. 2. 这里打包的镜像是从官网拉下来的,并不是自己项目创建的新镜像,主要测试功能 一.搭建过程 首先 ...

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

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

随机推荐

  1. 一款由 .NET 官方团队开源的电子商务系统 - eShop

    项目介绍 eShop是一款由.NET官方开源的,基于.NET Aspire构建的用于参考学习的服务架构电子商务系统,旨在展示如何利用.NET框架及其相关技术栈构建一个现代化的电子商务网站.该项目采用服 ...

  2. [白话解析] 通俗解析集成学习之GBDT

    [白话解析] 通俗解析集成学习之GBDT 目录 [白话解析] 通俗解析集成学习之GBDT 0x00 摘要 0x01 定义 & 简述 1. GBDT(Gradient Boosting Deci ...

  3. Mac安装Charles抓包工具

    一.下载安装 地址1:官网 下载地址: https://www.charlesproxy.com/download/ 激活信息 Registered Name: https://zhile.io Li ...

  4. 20 分钟高效掌握 cursor

    本身属于在前端小组的一次小分享,这里做个同步分享. 一.pro 权益说明 目前公司购买了 2 个 pro 月付账号,权益包括无限制 tab 补全与 ai 聊天,但每个月只有 500 个快速请求权益,如 ...

  5. docker - [11] 数据卷之DockerFile

    通过DockerFile可以生成一个镜像 一.DockerFile的介绍 狂神:dockerfile是用来构建docker镜像的文件命令参数脚本. 狂神:dockerfile是面向开发的,我们以后要发 ...

  6. ABC393E题解

    大概评级:绿. 拿到题目,寻找突破口,发现 \(A_i \le 10^6\),一般的数据都是 \(A_i \le 10^9\),所以必有蹊跷. 数学,权值,最大公约数,联想到了因子--懂了,原来是这么 ...

  7. Keepalived学习,双主热备高可用

    双主热备可以看做双机主备的升级(双机主备链接 https://www.cnblogs.com/hmxs/p/12041735.html),它是为了让两台设备都能提供服务,而不是主节点正常时,备用节点一 ...

  8. 【数值方法-Python实现】Crout分解+追赶法实现

    涉及Crout分解.追赶法的线性方程组求解方法的Python实现. Codes def CroutLU(A:np.ndarray)->Tuple[np.ndarray,np.ndarray]: ...

  9. `go install`指令行为分析

    分析go install [build flags] [packages]指令做了什么,如何实现安装GO软件,我们如何编写一个软件使得可以使用该指令安装自己编写的程序. 参考go官方文档 安装位置 $ ...

  10. 红黑树和b+树

    二叉搜索树 满足以下条件: 对于根节点,左子树中所有节点的值 < 根节点的值 < 右子树中所有节点的值. 任意节点的左.右子树也是二叉搜索树,即同样满足条件 1. 这是一个正常的,没有碰到 ...