Docker仓库

作者: AC编程 | 来源:发表于2022-01-27 00:02 被阅读0次

    一、什么是仓库

    仓库就是集中存放镜像的地方,分为公共仓库和私有仓库,一个容易混淆的概念是注册服务器,实际上注册服务器是存放仓库的具体服务器,一个注册服务器可以有多个仓库,而每个仓库下面有多个镜像。

    二、使用Docker官方公共仓库

    官方仓库地址:DockerHub

    DockerHub
    2.1 登录仓库

    使用docker login 命令来登录官方的公共仓库,没有用户名密码的可以去官方注册一个

    docker login
    
    root@iZwz9f4eh9lmah6qiq41zvZ:~# docker login
    Login with your Docker ID to push and pull images from Docker Hub. If you don't have a Docker ID, head over to https://hub.docker.com to create one.
    Username: alanchenyan
    Password: 
    WARNING! Your password will be stored unencrypted in /root/.docker/config.json.
    Configure a credential helper to remove this warning. See
    https://docs.docker.com/engine/reference/commandline/login/#credentials-store
    
    Login Succeeded
    root@iZwz9f4eh9lmah6qiq41zvZ:~# 
    
    
    2.2 下载镜像

    使用docker pull 命令下载镜像

    docker pull nginx
    
    root@iZwz9f4eh9lmah6qiq41zvZ:~# docker pull nginx
    Using default tag: latest
    latest: Pulling from library/nginx
    Digest: sha256:20d5b519920fbc0009e2560418b291c69b69155a524db88525368bce6b712465
    Status: Image is up to date for nginx:latest
    docker.io/library/nginx:latest
    root@iZwz9f4eh9lmah6qiq41zvZ:~# 
    
    2.3 推送镜像

    使用docker push 命令推送镜像

    docker push alanchenyan/nginx:v1.0
    

    三、国内第三方公共仓库

    使用国内的仓库就是为了能提高下载的速度:阿里云的加速器、DaoCloud的加速器等。

    阿里云的加速器

    四、搭建自己的本地仓库

    这个私有仓库才是重点,在我们的企业中很多都会是自己去定制自己的镜像文件,有一些还必须不能对外开放的,也是能够为了提高在内网的下载速度,这样我们就要搭建自己的私有仓库了。

    安装docker后,可以通过官方提供的registry镜像来简单的搭建一套本地的私有仓库

    4.1 安装步骤

    1、搜索镜像

    docker search registry
    

    2、拉取镜像

    docker pull registry
    

    3、创建容器

    #创建存放镜像的目录
    
    mkdir -p /opt/data/docker/  
    
    #创建容器 -p指定端口 -v数据卷挂载
    
    docker run -it -d -p 5000:5000 -v /opt/data/docker:/tmp/registry registry
    

    ECS安全组需要开放5000端口

    4.2 配置私有仓库地址
    vi /etc/docker/deamon.json
    

    配置内容

    {
      “insecure-registries”:[“120.24.95.76:5000”]
    }
    
    配置内容
    4.3 重启

    1、重启配置

    sudo systemctl daemon-reload
    

    2、重启Docker

    sudo systemctl restart docker
    

    3、查看仓库容器状态

    docker ps -a
    

    仓库容器当前为退出状态

    root@iZwz96ew7wfkgebgbq9crbZ:/usr/share/maven/conf# docker ps -a
    CONTAINER ID   IMAGE      COMMAND                  CREATED         STATUS         PORTS                                       NAMES
    22db63715a88   registry   "/entrypoint.sh /etc…"   4 minutes ago   Up 4 minutes   0.0.0.0:5000->5000/tcp, :::5000->5000/tcp   thirsty_euclid
    root@iZwz96ew7wfkgebgbq9crbZ:/usr/share/maven/conf# 
    

    4、启动本地仓库容器

    docker start 22db63715a88
    

    启动

    root@iZwz96ew7wfkgebgbq9crbZ:/usr/share/maven/conf# docker start 22db63715a88
    22db63715a88
    root@iZwz96ew7wfkgebgbq9crbZ:/usr/share/maven/conf#
    
    4.4 访问Docker私有仓库

    在浏览器中访问http://120.24.95.76:5000/v2/_catalog

    访问结果

    相关文章

      网友评论

        本文标题:Docker仓库

        本文链接:https://www.haomeiwen.com/subject/ohuohrtx.html