Docker默认不允许非HTTPS方式推送镜像,我们可以通过Docker的配置选项来取消此限制:

[root@fedora ~]# cat /etc/docker/daemon.json
{
"registry-mirrors": ["http://95822026.m.daocloud.io"],
"insecure-registries": ["192.168.43.174:5000"]
}
# ⚠️这是Json格式

将上面的文件写入到docker服务配置文件中的[Service]配置项下:

[root@fedora ~]# grep 'EnvironmentFile=/etc/docker/daemon.json' /lib/systemd/system/docker.service
EnvironmentFile=/etc/docker/daemon.json

完事后重新载入systemd并重启docker:

[root@fedora ~]# systemctl daemon-reload
[root@fedora ~]# systemctl restart docker

下面的步骤将构建一个私有仓库



下载官方提供的私用仓库镜像,和一个用于测试的镜像:

# 下载私用仓库镜像
[root@fedora ~]# docker pull registry # 下载用于测试的镜像
[root@fedora ~]# docker pull hello-world

下载完成后,启动私有仓库registry容器:

# 私有仓库会被创建在容器的/var/lib/registry目录下
# 可通过-v参数将宿主机的目录挂载到容器中的目录,这样便可在宿主机中查看镜像文件
[root@fedora ~]# docker run -d -p 5000:5000 -v /opt/data/registry:/var/lib/registry registry

测试连通性:

[root@fedora ~]# telnet localhost 5000

连通后,开始修改用于测试的镜像:

# 修改tag,以docker registry的地址端口开头
[root@fedora ~]# docker tag hello-world:latest 192.168.43.174:5000/hello-world:latest

推送本地镜像至私有仓库:

[root@fedora ~]# docker push 192.168.43.174:5000/hello-world

推送后,查询仓库:

[root@fedora ~]# curl http://192.168.43.174:5000/v2/_catalog
{"repositories":["hello-world"]} # 可见,我们的hello-world镜像上传成功了

下载私有仓库中的镜像:

# 先将本地的测试镜像删除了
# 因为上面修改过测试镜像的tag,所以本地会有两个相同ID的镜像,这里我们指定镜像ID删除
[root@fedora ~]# docker rmi -f 4ab4c602aa5e # 删除后,再下载仓库中的镜像
[root@fedora ~]# docker pull 192.168.43.174:5000/hello-world

ok,到这里就结束了.

【Docker构建私有仓库】的更多相关文章

  1. Docker 构建私有仓库

    Docker Hub 目前Docker官方维护了一个公共仓库Docker Hub,其中已经包含了数量超过15000的镜像.大部分需求都可以通过在Docker Hub中直接下载镜像来实现. 可以在htt ...

  2. Docker | 第六章:构建私有仓库

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

  3. Docker 搭建私有仓库

    Docker 搭建私有仓库 环境: docker 版本 :18.09.1 主机地址:192.168.1.79 1.运行并创建私有仓库 docker run -d \ -v /opt/registry: ...

  4. Docker本地私有仓库实战

    Docker仓库主要用于存放Docker镜像,Docker仓库分为公共仓库和私有仓库,基于registry可以搭建本地私有仓库,使用私有仓库的优点如下: 1)节省网络带宽,针对于每个镜像不用去Dock ...

  5. Docker Harbor私有仓库部署与管理 (超详细配图)

    Docker Harbor私有仓库部署与管理 1.Harbor 介绍 2.Harbor部署 3.Harbor管理 1.Harbor 介绍: 什么是 Harbor ? Harbor 是 VMware 公 ...

  6. Python Docker 查看私有仓库镜像【转】

    文章来源:python Docker 查看私有仓库镜像 pip 安装: # 首先安装epel扩展源: yum -y install epel-release # 更新完成之后,就可安装pip: yum ...

  7. Docker registry 私有仓库镜像查询、删除、上传、下载 shell

    #Docker官方私有仓库registry #官方只提供了API接口,不方便使用,就写了个shell #docker-registry安装配置http://www.cnblogs.com/elvi/p ...

  8. 菜鸟系列docker——搭建私有仓库harbor(6)

    docker 搭建私有仓库harbor 1. 准备条件 安装docker sudo yum update sudo yum install -y yum-utils device-mapper-per ...

  9. [Docker]docker搭建私有仓库(ssl、身份认证)

    docker搭建私有仓库(ssl.身份认证) 环境:CentOS 7.Docker 1.13.1 CentOS 7相关: https://www.cnblogs.com/ttkl/p/11041124 ...

随机推荐

  1. hadoop-09-安装资源上传

    hadoop-09-安装资源上传 在/software/www/html 下面上传 ambari  HDP  HDP-UTILS-1.1.0.21 文件,之后解压:

  2. 【Mockplus视频教程】《10分钟玩转Mockplus》

    地址:http://doc.mockplus.cn/?p=152

  3. MAVEN自己主动部署到tomcat

    前面几篇文章maven生成的war包都是手动部署到tomcat,显然这样是非常麻烦的.那么这一篇文章就来介绍一个怎样使用maven高速自己主动的部署项目到tomcat容器中. 1.首先我们须要配置to ...

  4. HDU 5303 Delicious Apples (2015多校第二场 贪心 + 枚举)

    Delicious Apples Time Limit: 5000/3000 MS (Java/Others)    Memory Limit: 524288/524288 K (Java/Other ...

  5. Android之Http通信——1.初识Http协议

    Android之Http通信--1.初识Http协议 引言: 今天是六一儿童节,先在这里给各位超龄儿童说声节日快乐哈~( ╯□╰ ),小猪也象征性地给群里的小朋友们派了红包-嗯,忙碌的五月最终过去了, ...

  6. C#重构经典全面汇总

    C#重构经典全面汇总 1.  封装集合 概念:本文所讲的封装集合就是把集合进行封装,仅仅提供调用端须要的接口. 正文:在非常多时候,我们都不希望把一些不必要的操作暴露给调用端,仅仅须要给它所须要的操作 ...

  7. Linux 经常使用快捷键

    桌面下: Alt+F5   取消最大化窗体 Alt+F9   最小化窗体  Alt+F10  最大化窗体  Alt+空格 打开窗体的控制菜单 (点击窗体左上角图标出现的菜单)     ctl+r   ...

  8. 安卓开发--HttpClient

    package com.zx.httpclient01; import android.app.Activity; import android.os.Bundle; import android.v ...

  9. C#后台请求其它网站页面

    /// <summary> /// 指定Post地址使用Get 方式获取全部字符串 /// </summary> /// <param name="url&qu ...

  10. LOJ #109. 并查集

    内存限制:256 MiB时间限制:2000 ms标准输入输出 题目类型:传统评测方式:文本比较 上传者: 匿名 提交提交记录统计讨论 1 测试数据   题目描述 这是一道模板题. 维护一个 nnn 点 ...