Docker入门——仓库
1、什么是docker仓库
Docker仓库是一个集中存放镜像的地方,它可以分为公共仓库和私有仓库。注册服务器是存放仓库的具体服务器,一个注册服务器上可以有多个仓库,而每个仓库下面可以有多个镜像。Docker Hub是Docker官方提供的最大的公共镜像仓库,目前包括了超过100,000的镜像]。您可以在Docker Hub上创建账户并上传您自己的镜像,也可以浏览其他用户上传的镜像。
2、docker公有仓库的地址有哪些
docker官方镜像仓库 :https://hub.docker.com
3、如何部署docker私有仓库
3.1 要部署Docker私有仓库,您可以使用官方提供的工具docker-registry。
以下是一些步骤:
- 安装Docker-registry。您可以通过获取官方registry镜像来运行。默认情况下,仓库会被创建在容器的/var/lib/registry目录下。您可以通过-v参数来将镜像文件存放在本地的指定路径。例如,以下命令将在本地/opt/data/registry目录下创建一个名为registry的容器: root@localhost ~# mkdir /var/lib/registry root@localhost ~# docker run --name registry -d -p 5000:5000 --restart=always -v /opt/data/registry:/var/lib/registry registry
- 配置Docker客户端以使用私有仓库。您需要在Docker客户端中配置一个文件,以便它知道如何访问私有仓库。该文件位于
/etc/docker/daemon.json
中,如果该文件不存在,请新建该文件并添加以下内容: root@localhost ~# cat /etc/docker/daemon.json { "registry-mirrors" : "https://docker.mirrors.ustc.edu.cn/" , "insecure-registries" : "10.0.0.56:5000" } root@localhost ~# systemctl daemon-reload root@localhost ~# systemctl restart docker - 推送和拉取镜像。现在,您可以使用
docker push
和docker pull
命令来推送和拉取镜像了。例如,以下命令将名为my-image
的镜像推送到私有仓库: #查看现有镜像 root@localhost ~# docker images REPOSITORY TAG IMAGE ID CREATED SIZE my-nginx latest 3ba69597200b 24 hours ago 187MB my-nginx1 latest 0dfb846012b7 24 hours ago 187MB #为my-nginx镜像打上标签并推送到私有仓库 root@localhost ~# docker tag my-nginx 10.0.0.56:5000/my-nginx root@localhost ~# docker push 10.0.0.56:5000/my-nginx
3.2 您还可以选择第三方工具harbor来部署私有仓库
以下是一些步骤:
1、从github上下载harbor包
代码语言:javascript复制[root@localhost ~]# wget https://github.com/goharbor/harbor/releases/download/v1.10.4/harbor-offline-installer-v1.10.4.tgz
#解压
[root@localhost ~]# tar -xzvf harbor-offline-installer-v1.10.4.tgz
[root@localhost ~]# cd harbor/
#修改配置文件
[root@localhost harbor]# vim harbor.yml
#配置看下图
#执行安装脚本
[root@localhost harbor]# ./install.sh
Creating harbor-jobservice ...
Creating nginx ...
✔ ----Harbor has been installed and started successfully.----
安装完成后可进入网页查看
如何推送镜像
其它功能可自行研究
4、docker仓库操作相关命令
代码语言:javascript复制以下是一些使用Docker仓库相关的命令:
docker login:用于登录到Docker仓库。
docker logout:用于退出Docker仓库。
docker pull:用于从Docker仓库中拉取镜像。
docker push:用于将镜像推送到Docker仓库。
docker search:用于在Docker仓库中搜索镜像。
docker images:用于列出本地主机上存在的所有镜像。
docker rmi:用于删除一个或多个本地镜像。
docker save:用于将一个或多个镜像保存为tar归档文件。
docker load:用于从一个tar归档文件中加载一个或多个镜像。
docker inspect:用于获取有关Docker对象的详细信息,包括镜像、容器、网络和卷等。
希望大家一起共同学习,共同进步。
本篇内容到此结束,感谢大家观看!
我正在参与2023腾讯技术创作特训营第三期有奖征文,组队打卡瓜分大奖!