第五章 访问Docker仓库

Posted lingxiaolong

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第五章 访问Docker仓库相关的知识,希望对你有一定的参考价值。

5.1 Docker Hub 公共镜像市场

        docker 官方公共镜像仓库 https://hub.docker.com

        国内的有时速云 https://hub.tenxcloud.com (跟docker官方镜像同步)

5.2 搭建本地私有仓库

5.2.1 使用registry镜像创建私有仓库

        安装Docker后,可以通过官方的registry镜像来简单搭建一套本地私有仓库环境:

首先查看下registry的默认volume的目录

[[email protected] ~]# docker inspect registry

[[email protected] ~]#  docker run -d -p 192.168.161.128:5000:5000 -v /data/registry:/var/lib/registry registry:latest

#/data/registry 为本地镜像文件存储目录

#/var/lib/registry为容器内仓库默认存放镜像的目录

2c00af3018e5cc1e57332da1987050293fe6d58905289350125a7f145468a464

[[email protected] ~]# docker ps

CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                    NAMES

2c00af3018e5        registry            "/entrypoint.sh /e..."   4 seconds ago       Up 2 seconds        0.0.0.0:5000->5000/tcp   elated_minsky

       通过-v参数来将镜像文件存放在本地的指定路径。

5.2.2 管理私有仓库

        使用docker tag 命令将这个镜像标记为 192.168.161.128:5000/ubuntu:14.04(格式为:docker tag IMAGE[:TAG] [REGISTRYHOST/][USERNAME/]NAME[:TAG]:

[[email protected] ~]# docker tag ubuntu:14.04 192.168.161.128:5000/ubuntu:14.04

[[email protected] ~]# docker images

REPOSITORY                    TAG                 IMAGE ID            CREATED             SIZE

192.168.161.128:5000/ubuntu   14.04               578c3e61a98c        2 weeks ago         223 MB

ubuntu                        14.04               578c3e61a98c        2 weeks ago         223 MB

         使用docker push 上传标记的镜像

[[email protected] ~]# docker push 192.168.161.128:5000/ubuntu

The push refers to a repository [192.168.161.128:5000/ubuntu]

70d93396f87f: Pushed

6ec525dfd060: Pushed

705419d10b13: Pushed

a4aaef726d02: Pushed

04964fddc946: Pushed

14.04: digest: sha256:e4cb2e8d951d1418075b261f76476b4ac33a0a2fcffb0a68e376dc81bb5a2611 size: 1359

        验证:

[[email protected] ~]# ls /data/registry/

docker

        Docker从1.3.X之后,与docker registry交互默认使用的是https,然而此处搭建的私有仓库只提供http服务,所以当与私有仓库交互时就会报错误。为了解决这个问题需要在启动docker server时增加启动参数为默认使用http访问。修改docker启动配置文件:

[[email protected] ~]# docker push 192.168.161.128:5000/ubuntu

The push refers to a repository [192.168.161.128:5000/ubuntu]

Get https://192.168.161.128:5000/v1/_ping: http: server gave HTTP response to HTTPS client

[[email protected] ~]# vi /usr/lib/systemd/system/docker.service

找到ExecStart

添加

          --insecure-registry 192.168.161.128:5000

重启服务器。即可解决

 

以上是关于第五章 访问Docker仓库的主要内容,如果未能解决你的问题,请参考以下文章

Docker | 第五章:构建自定义镜像

数据库系统概念笔记——第五章:高级SQL

第五章学习小结

第五章 3 指针

第五章小结

第五章