实验手册-15-Docker镜像仓库实践

  • 熟悉 Docker Hub:Docker Hub 是 Docker 官方提供的镜像仓库,其中包含了大量公共镜像。通过熟悉 Docker Hub,可以了解 Docker 镜像的存储和管理。
  • 搭建 Docker Registry 私有镜像仓库:Docker Registry 是 Docker 提供的镜像仓库,可以用于存储私有镜像。通过搭建 Docker Registry 私有镜像仓库,可以将私有镜像存储在本地,提高镜像的安全性。

难易程度:简单

步骤 1 以 centos 为例,搜索镜像。

bash

docker search centos

步骤 2 下载 centos 镜像至本地。

bash

docker pull centos

由于网络原因,我们不能直接访问 Docker Hub,也就不能将我们自己的镜像推送到 Docker Hub。这也是下一个任务的意义之一。

docker-registry 是官方提供的工具,可以用于构建私有的镜像仓库。

步骤 1 获取官方 registry 镜像并运行。

bash

docker run -d -p 5000:5000 --restart=always --name registry-private registry

查看是否运行成功:

bash

docker ps | grep registry-private

出现以下结果代表运行成功

步骤 2 先在本机查看已有的镜像。

bash

docker image ls

步骤 3 以 centos 镜像为例,通过 docker tag 命令将 centos 镜像进行标记。

bash

docker tag centos:latest 127.0.0.1:5000/centos:latest

查看该步骤的结果:

bash

docker image ls | grep centos

步骤 4 使用 docker push 上传标记的镜像。

bash

docker push 127.0.0.1:5000/centos:latest

步骤 5 用 curl 查看仓库中的镜像。

bash

curl 127.0.0.1:5000/v2/_catalog

步骤 6 删除已有镜像,再尝试从私有仓库中下载这个镜像。

bash

docker image rm 127.0.0.1:5000/centos:latest 

bash

docker pull 127.0.0.1:5000/centos:latest

查看重新下载的镜像:

bash

docker image ls

先修改 /etc/docker/daemon.json 文件,增加 insecure-registries 这一行

修改保存后重启 docker

bash

systemctl restart docker

步骤1 下载镜像

bash

docker pull busybox

步骤2 标记镜像

bash

docker tag busybox:latest 192.168.192.215:5000/v学号:latest

学号 改成自己的学号后两位 示例:docker tag busybox:latest 192.168.192.215:5000/v35:latest

步骤3 上传镜像到教师机

bash

应该用什么命令上传呢?

请同学们了解 Harbor 私有镜像仓库,在工业实践中,它比 Docker Registry 更实用。