zoukankan      html  css  js  c++  java
  • docker入门(四)访问docker仓库

    1.1.Docker Hub公共镜像市场

    官方地址为:https://hub.docker.com

    1.1.1.登录

    docker login命令来输入用户信息,成功后会在当前用户创建~/.docker/config.json文件来保存认证信息

    1.2.1.基本操作

    用户可直接通过docker search 和docker pull来查找和下载镜像

    根据是否为官方提供,镜像分为2类:

    • 由docker公司创建维护的镜像,这样的镜像往往使用单个单词作为名字,如:centos
    • 由odcker用户维护的镜像,名字一般带有用户名称为前缀,表示某个用户下的某个仓库,由用户维护。可以通过用户名称前缀“user_name/镜像名”来指定使用某个用户提供的镜像。如:ansible/centos7-ansible

    1.3.1.自动创建

    自动创建(Automated Builds)是docker hub提供的自动化服务,这一功能可以自动跟随项目代码的变更而重新构建镜像。

    例如用户构建了某个应用镜像,如果发了新版本,需要手动更新。而自动创建允许用户通过docker hub指定跟踪某个目标网站(目前支持github或bitbucket)上的项目,一但项目发生新的提交,则自动执行创建。

    要配置自动创建,包括以下步骤:

    1. 创建并登录docker hub,以及目标网站如github
    2. 在目标网站中允许docker hub访问服务
    3. 在docker hub中配置一个“自动创建”类型的项目
    4. 选取一个目标网站中的项目(需要dockerfile)和分支
    5. 指定dockerfile的位置,并提交创建

            之后,可以再docker hub的“自动创建”页面中跟踪每次创建的状态。

    2.1.第三方镜像市场

    不少云服务器商提供了镜像的下载和加速,如:腾讯云、阿里云

    2.1.1.查看镜像

    访问各云服务器商镜像官网

    2.1.2.下载镜像

    docker pull index.tenxcloud.com/docker_library/node:latest
    

    下载后可以更新标签,保持与官方标签一致,方便使用

    docker tag index.tenxcloud.com/dpcker_library/node:latest node:latest

    3.1.搭建本地私有仓库

    假如本机10.0.0.2

    3.1.1.使用registry镜像搭建私有仓库

    下载并启动一个registry容器,穿件本地的私有仓库服务。因为默认情况下仓库存放地址会是/var/lib/registry目录,我们不希望他在那的话就接-v参数改掉,如果无所谓就去掉-v参数的内容-v /opt/data/registry:/var/lib/registry

    docker run -d -p 5000:5000 -v /opt/data/registry:/var/lib/registry registry:2

    3.2.1.管理私有仓库

    现在私有仓库的地址为10.0.0.2:5000

    来上传试试吧

    docker tag ubuntu:18.04 10.0.0.2:5000/test
    docker push 10.0.0.2:5000/test
    ##用curl查看仓库10.0.0.2:5000中的镜像
    curl http://10.0.0.2:5000/v2/search
    

    比较新的docker版本对安全性要求比较高,会要求仓库支持SSL/TSL证书。对内使用的私有仓库,可以自行配置证书或者关闭对私有仓库的安全性检查

    • 首先修改docker deamon的启动参数,如下,表示信任这个库,不进行安全检查
      DOCKER_OPTS="--insecure-registry 10.0.0.2:5000"
    • 重启docker服务并下载镜像到本地
      sudo systemctl daemon-reload
      sudo systemctl restart docker
      docker pull 10.0.0.2:5000/test

     4.1.本章小结

    仓库是集中维护容器镜像的地方,为镜像文件的分发和管理提供了便捷的途径。

    在企业生产环境中,往往需要使用私有镜像仓库来维护内部镜像,本文介绍了一些基础的搭建操作。

    除了官方的registry项目外,我们还可以使用其他的开源方案(例如nexus)来搭建私有镜像仓库。

  • 相关阅读:
    [BZOJ] 2054 疯狂的馒头
    day33(sql)
    day32(表单校验js和jquery表单校验)
    day31(正则表达式)
    day30(对象转json(java))
    day29(对象转xml(使用java))
    day28(ajax之js原生代码实现)
    day27(反射之内省机制实现BeanUtils)
    day27(反射之内省机制)
    day26(分页查询)
  • 原文地址:https://www.cnblogs.com/xysr-tom/p/12492877.html
Copyright © 2011-2022 走看看