Docker笔记6 | 关于仓库的一些基本知识梳理

本文涉及的产品
可观测监控 Prometheus 版,每月50GB免费额度
简介: Docker笔记6 | 关于仓库的一些基本知识梳理

1 Docker Hub

1.1 简介和登陆

在这里插入图片描述

  • 注册账号以后可以使用docker login进行登陆:

在这里插入图片描述
在这里插入图片描述

  • 使用docker logout进行退出。

在这里插入图片描述

1.2 拉取镜像

  • 使用docker search查找镜像;
noamanelson@noamanelson-Virtual-Machine:~$ docker search ubuntu
NAME                             DESCRIPTION                                      STARS     OFFICIAL   AUTOMATED
ubuntu                           Ubuntu is a Debian-based Linux operating sys…   15954     [OK]       
websphere-liberty                WebSphere Liberty multi-architecture images …   294       [OK]       
open-liberty                     Open Liberty multi-architecture images based…   59        [OK]       
neurodebian                      NeuroDebian provides neuroscience research s…   99        [OK]       
ubuntu-debootstrap               DEPRECATED; use "ubuntu" instead                 51        [OK]       
ubuntu-upstart                   DEPRECATED, as is Upstart (find other proces…   114       [OK]       
ubuntu/nginx                     Nginx, a high-performance reverse proxy & we…   91                   
ubuntu/cortex                    Cortex provides storage for Prometheus. Long…   3                    
ubuntu/squid                     Squid is a caching proxy for the Web. Long-t…   57                   
ubuntu/apache2                   Apache, a secure & extensible open-source HT…   58                   
ubuntu/mysql                     MySQL open source fast, stable, multi-thread…   48                   
ubuntu/kafka                     Apache Kafka, a distributed event streaming …   31                   
ubuntu/bind9                     BIND 9 is a very flexible, full-featured DNS…   51                   
ubuntu/redis                     Redis, an open source key-value store. Long-…   18                   
ubuntu/prometheus                Prometheus is a systems and service monitori…   40                   
ubuntu/postgres                  PostgreSQL is an open source object-relation…   27                   
ubuntu/zookeeper                 ZooKeeper maintains configuration informatio…   5                    
ubuntu/grafana                   Grafana, a feature rich metrics dashboard & …   9                    
ubuntu/memcached                 Memcached, in-memory keyvalue store for smal…   5                    
ubuntu/prometheus-alertmanager   Alertmanager handles client alerts from Prom…   8                    
ubuntu/dotnet-deps               Chiselled Ubuntu for self-contained .NET & A…   8                    
ubuntu/dotnet-runtime            Chiselled Ubuntu runtime image for .NET apps…   5                    
ubuntu/dotnet-aspnet             Chiselled Ubuntu runtime image for ASP.NET a…   6                    
ubuntu/cassandra                 Cassandra, an open source NoSQL distributed …   2                    
ubuntu/telegraf                  Telegraf collects, processes, aggregates & w…   4  
  • 查找到有很多镜像,基本分为两类:一类是官方创建的,比如OFFICIAL下标识是OK的;另一类是由由 Docker Hub 的注册用户创建并维护的,往往带有用户名称前缀。
  • 使用docker pull将镜像拉取到本地,比如拉取官方的ubuntu

在这里插入图片描述

1.3 推送镜像

  • 命令为:docker push ,将自己的镜像推送到Docker Hub

在这里插入图片描述

  • 登陆后使用docker search 用户名查找用户下的镜像:

在这里插入图片描述

1.4 自动构建

  • 使用场景为:
构建了镜像,安装了某个软件,当软件发布新版本则需要手动更新镜像。
  • 说明:
自动构建允许用户通过 Docker Hub 指定跟踪一个目标网站(支持 GitHub 或 BitBucket)上的项目,一旦项目发生新的提交 (commit)或者创建了新的标签(tag),Docker Hub 会自动构建镜像并推送到 Docker Hub中。
  • 操作步骤:
1、登录 Docker Hub;
在这里插入图片描述

2、在 Docker Hub 点击右上角头像,在账号设置(Account Settings)中关联(Linked Accounts)目标网站;
在这里插入图片描述

3、在 Docker Hub 中新建或选择已有的仓库,在 Builds 选项卡中选择Configure Automated Builds ;
4、选取一个目标网站中的项目(需要含 Dockerfile )和分支;指定 Dockerfile 的位置,并保存。

2 私有仓库

2.1 简介

  • 可以创建本地仓库供私人使用;
  • docker-registry 是官方提供的工具,可以用于构建私有的镜像仓库

2.2 安装docker-registry

  • 命令:
docker run -d -p 5000:5000 --restart=always --name registry registry
说明:
1、使用官方的 registry 镜像来启动私有仓库;
2、默认情况,仓库会被创建在容器的/var/lib/registry 目录下;
3、使用-v参数修改默认地址:
` docker run -d
-p 5000:5000
-v /opt/data/registry:/var/lib/registry
registry
`
在这里插入图片描述

2.3 上传镜像

  • 使用 docker tag 来标记一个镜像,然后推送它到仓库;
  • 比如将使用 docker tagubuntu:latest 这个镜像标记为 localhost/ubuntu:latest

在这里插入图片描述

  • 使用docker push上传:
noamanelson@noamanelson-Virtual-Machine:~$ docker image rm 127.0.0.1:5000/ubuntu:latest 
Error response from daemon: No such image: 127.0.0.1:5000/ubuntu:latest
noamanelson@noamanelson-Virtual-Machine:~$ docker tag ubuntu:latest 127.0.0.1:5000/ubuntu:latest
noamanelson@noamanelson-Virtual-Machine:~$ docker image ls
REPOSITORY              TAG       IMAGE ID       CREATED         SIZE
registry                latest    65f3b3441f04   4 days ago      24MB
127.0.0.1:5000/ubuntu   latest    3b418d7b466a   2 weeks ago     77.8MB
ubuntu                  latest    3b418d7b466a   2 weeks ago     77.8MB
ubuntu                  18.04     3941d3b032a8   2 months ago    63.1MB
hello-world             latest    feb5d9fea6a5   19 months ago   13.3kB
noamanelson@noamanelson-Virtual-Machine:~$ docker push 127.0.0.1:5000/ubuntu:latest
The push refers to repository [127.0.0.1:5000/ubuntu]
b8a36d10656a: Pushed 
latest: digest: sha256:8d741c3fb719fff7991700dbe988d1d549f32b3c24ae2276657f4a4ca0fbe42d size: 529
noamanelson@noamanelson-Virtual-Machine:~$ 

2.4 查看镜像

  • 使用curl查看仓库中的镜像:
noamanelson@noamanelson-Virtual-Machine:~$ curl 127.0.0.1:5000/v2/_catalog
{"repositories":["ubuntu"]}

2.5 下载镜像

  • 删除这个镜像:

在这里插入图片描述

  • 使用docker pull下载:

在这里插入图片描述

相关实践学习
容器服务Serverless版ACK Serverless 快速入门:在线魔方应用部署和监控
通过本实验,您将了解到容器服务Serverless版ACK Serverless 的基本产品能力,即可以实现快速部署一个在线魔方应用,并借助阿里云容器服务成熟的产品生态,实现在线应用的企业级监控,提升应用稳定性。
目录
相关文章
|
2月前
|
Docker 容器
Docker自建仓库之Harbor高可用部署实战篇
关于如何部署Harbor高可用性的实战教程,涵盖了从单机部署到镜像仓库同步的详细步骤。
148 15
Docker自建仓库之Harbor高可用部署实战篇
|
2月前
|
存储 Kubernetes Cloud Native
部署Kubernetes客户端和Docker私有仓库的步骤
这个指南涵盖了部署Kubernetes客户端和配置Docker私有仓库的基本步骤,是基于最新的实践和工具。根据具体的需求和环境,还可能需要额外的配置和调整。
88 1
|
1月前
|
网络协议 应用服务中间件 nginx
私有的docker私有镜像站仓库harbor
私有的docker私有镜像站仓库harbor
|
2月前
|
存储 测试技术 数据安全/隐私保护
Docker自建仓库之Harbor部署实战
关于如何部署和使用Harbor作为Docker企业级私有镜像仓库的详细教程。
605 12
|
2月前
|
Docker 容器
Docker Hub镜像公共仓库使用
这篇文章介绍了如何使用Docker Hub公共仓库进行镜像的创建、上传、下载和管理。
1081 8
|
2月前
|
运维 数据安全/隐私保护 Docker
Docker自建仓库之Docker Registry部署实战
关于如何使用Docker Registry镜像搭建本地私有Docker仓库的实战教程,包括了下载镜像、创建授权目录和用户名密码、启动Registry容器、验证端口和容器、测试登录仓库、上传和下载镜像的详细步骤。
741 5
|
3月前
|
存储 Docker 容器
阿里云私有docker仓库构建海外镜像
【8月更文挑战第25天】
313 3
|
2月前
|
应用服务中间件 nginx 数据安全/隐私保护
使用Harbor搭建Docker私有仓库
Harbor是一款开源的企业级Docker仓库管理工具,分为私有与公有仓库两种类型,其中私有仓库被广泛应用于运维场景。Harbor提供图形化界面,便于直观操作,并且其核心组件均由容器构建而成,因此安装时需预先配置Docker及docker-compose。Harbor支持基于项目的用户与仓库管理,实现细粒度的权限控制;具备镜像复制、日志收集等功能,并可通过UI直接管理镜像,支持审计追踪。部署Harbor涉及配置文件调整、登录认证等步骤,并可通过客户端进行镜像的上传、拉取等操作。系统内置多种角色,包括受限访客、访客、开发者、维护人员及管理员,以满足不同场景下的使用需求。
128 0
|
3月前
|
jenkins 网络安全 持续交付
Jenkins Pipeline 流水线 - 上传文件 Publish over SSH + Docker 编译 + 上传到阿里仓库
Jenkins Pipeline 流水线 - 上传文件 Publish over SSH + Docker 编译 + 上传到阿里仓库
133 0
|
3月前
|
Java 数据安全/隐私保护 Docker
SpringBoot Docker 发布到 阿里仓库
SpringBoot Docker 发布到 阿里仓库
44 0
下一篇
无影云桌面