一文带大家了解和使用Docker镜像仓库

 更新时间:2023年06月01日 09:10:46   作者:叫我二蛋  
本文主要介绍一下容器镜像仓库的使用,包括公有仓库和自己搭建的私有仓库,文中有详细的代码示例,以及图解,对我们了解和使用 Docker 镜像仓库有一定的帮助,需要的朋友可以参考下

Docker 公共仓库

Docker hub 是 Docker 官方维护的一个公共仓库,大部分需求都可以通过在 Docker Hub 中直接下载镜像来实现。

因为 hub.docker.com 是在国外的,所以无法访问该网址,我们平时使用时可以通过配置镜像加速来拉取镜像。《了解和使用 Docker》中有镜像加速配置,这里就不再次陈述了。

但是如果要将自己的镜像推送到公共仓库中还需要有一个账号登录到 hub.docker.com 中才可以 push。

Docker Hub 注册登录

通过下图链接注册一个账号并登录

创建容器镜像仓库

登录成功后需要自己创建一个仓库,用来存储镜像。

上传镜像

镜像仓库创建好之后,就可以将本地的容器镜像 push 到我们所创建的镜像仓库中,并向全球用户共享容器镜像。

我们以 centos 镜像为例,重新打一个 tag 后进行推送

用刚才注册的账号登录 Docker hub

# 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: xxx
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 成功

为容器镜像重新打标记

# docker tag centos:latest xxxx/centos:v1
The push refers to repository [docker.io/xxxx/centos]
74ddd0ec08fa: Mounted from library/centos
v1: digest: sha256:a1801b843b1bfaf77c501e7a6d3f709401a1e0c83863037fa3aab063a7fdb9dc size: 529

至此镜像就上传成功了,同时别的用户也可以使用这个镜像。

Harbor 私有仓库

如果企业需要搭建自己的镜像仓库,可通过 Harbor 进行搭建,可以自己管理自己的镜像,DevOps 工作也比较方便,重要的是不会受网络的影响。 这个其实就跟 Maven 私有仓库一样。

在搭建 Harbor 前需要安装 Docker、Docker Compose 环境,这里不做详细描述。

Harbor 环境搭建

下载harbor离线安装包

# wget https://github.com/goharbor/harbor/releases/download/v2.4.1/harbor-offline-installer-v2.4.1.tgz

解压harbor离线安装包

# tar xf harbor-offline-installer-v2.4.1.tgz
修改配置文件内容
# vim harbor.yml
# Configuration file of Harbor
# The IP address or hostname to access admin UI and registry service.
# DO NOT use localhost or 127.0.0.1, because Harbor needs to be accessed by external clients.
hostname: 192.168.10.155
# http related config
http:
  # port for http, default is 80. If https enabled, this port will redirect to https port
  port: 80
# https related config
https:
  # https port for harbor, default is 443
  port: 443
  # The path of cert and key files for nginx
  certificate: 证书
  private_key: 密钥
#访问密码
harbor_admin_password: 12345 
......

执行预备、安装脚本

# ./prepare & ./install.sh

安装好之后就可以通过界面访问了

镜像上传至 Harbor

修改docker daemon使用 Harbor

# vim /etc/docker/daemon.json
# cat /etc/docker/daemon.json
{
        "insecure-registries": ["192.168.10.155"]
}

登录 Harbor

# docker login 192.168.10.155
Username: admin  用户名 admin
Password:        密码   12345
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 登陆成功

推送本地容器镜像到harbor仓库

# docker push 192.168.10.155/library/centos:v1

通过 Harbor 界面我们就可以看到刚才推送的镜像了。

到此这篇关于一文带大家了解和使用Docker镜像仓库的文章就介绍到这了,更多相关Docker 镜像仓库内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Docker 常用命令整理并介绍

    Docker 常用命令整理并介绍

    这篇文章主要介绍了Docker 常用命令的知识,这里介绍了Docker 的操作容器,Image,网络操作,等内容,有需要的小伙伴可以参考下
    2016-10-10
  • Docker多容器连接(以Tomcat+Mysql为例)

    Docker多容器连接(以Tomcat+Mysql为例)

    这篇文章主要介绍了Docker多容器连接(以Tomcat+Mysql为例),Docker提供了多个容器直接访问的方法,可以使多个容器直接通过网络端口进行访问
    2017-03-03
  • docker修改默认ip的实现步骤

    docker修改默认ip的实现步骤

    在 Docker 中,默认的网络是 bridge 网络,它通常使用 172.17.0.0/16 这个网段,那么如何修改,本文就来详细的介绍下docker修改默认ip的实现步骤,感兴趣的可以了解一下
    2024-02-02
  • docker设置代理通过代理服务器拉取镜像方式

    docker设置代理通过代理服务器拉取镜像方式

    这篇文章主要介绍了docker设置代理通过代理服务器拉取镜像方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2025-04-04
  • 使用Docker搭建minio的详细图文教程

    使用Docker搭建minio的详细图文教程

    本文介绍了Docker配置镜像源的方法,以及如何在Docker中拉取镜像和创建运行容器,详细说明了使用MinIO创建Bucket、设置AccessKey、安装和配置Cpolar以及SpringBoot集成MinIO的步骤,需要的朋友可以参考下
    2024-10-10
  • 给docker创建的elasticsearch容器添加密码简单步骤

    给docker创建的elasticsearch容器添加密码简单步骤

    在使用Elasticsearch(ES)Docker容器时,有时需要设置密码来保护数据的安全性,这篇文章主要给大家介绍了关于给docker创建的elasticsearch容器添加密码的简单步骤,需要的朋友可以参考下
    2024-02-02
  • docker 添加端口及获取dockerfile的方法

    docker 添加端口及获取dockerfile的方法

    这篇文章主要介绍了docker 添加端口及获取dockerfile的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-02-02
  • Docker存储空间清理以及另外的一些命令

    Docker存储空间清理以及另外的一些命令

    大家在使用一段时间的docker容器后,会发现堆叠了很多无用的垃圾文件,比如,终止的容器、限定不要的镜像,混乱的存储等,这篇文章主要介绍了Docker存储空间清理以及另外的一些命令的相关资料,需要的朋友可以参考下
    2024-03-03
  • win10环境下安装Docker的实现

    win10环境下安装Docker的实现

    这篇文章主要介绍了win10环境下安装Docker的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-09-09
  • 基于Harbor构建docker私有仓库的方法

    基于Harbor构建docker私有仓库的方法

    这篇文章主要介绍了Harbor构建docker私有仓库的问题,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-12-12

最新评论