Nexus3

Docker 私有仓库

支持 3 种类型:

  1. Docker (hosted): 它是一个私有 Docker 仓库,允许您上传和存储自己的 Docker 镜像。这为组织内部提供了一个中心存储点,确保了团队成员可以轻松地分享和获取镜像。

  2. Docker (proxy): 它是代理其他公共或私有 Docker 仓库的地方。当您从代理仓库拉取镜像时,它会首先检查本地是否有该镜像的缓存,如果没有,它会从代理的外部 Docker 仓库拉取镜像,然后缓存到本地。这可以加速访问速度并提供中央控制点。

  3. Docker (group): 它将多个 Docker 仓库(如hosted和proxy)组合在一起,提供一个单一的访问点。这允许用户从一个地址拉取多个仓库中的镜像,简化了配置和管理。

Q&A:

Q:我可以直接向 Docker (group) 提交容器,它会帮我提交至 Docker (hosted) 吗?

A:不,您不能直接向 Docker (group) 提交容器。Docker (group) 仓库是一个只读的仓库,它组合了其他仓库(如 hosted 和 proxy)的内容,但不支持直接的写入操作。

Nexus 3 - Docker — 从入门到实践

搭建方式

首先创建一个 blob store,名为 docker,用于文件存储。

之后创建 Docker (hosted):

接下来配置权限:Realms > Move Docker Bearer Token Realm to active > Save

Create Private Docker Registry (base on Nexus3) - Qiita

Docker 提交至私有源

在本地 docker 配置中,设置 insecure-registries

我有一个本地的 Python 工程,我想将它容器化,并且 dockerfile 已编写完成,且在本地环境运行正常。我想将其打包成容器,提交到 Docker 私有仓库中,供在其他机器上部署。

首先,开发机需要登陆 Docker 私有源:

docker login 192.168.31.29:9002

执行 docker ps -a 查看本地容器,找到了我需要提交的容器:

把容器打包成镜像:

docker commit -a 'maxiee' -m 'init' 29d7142c061d ray_memex:latest

将本地 tag 与远端 tag 关联:

docker tag ray_memex:latest 192.168.31.29:9002/ray_memex:latest

将镜像推送至远端仓库:

docker push 192.168.31.29:9002/ray_memex:latest

至此,推送完成。

Docker搭建私仓,并且推送镜像全流程_docker registry 拉取镜像 push_明天再去学习的博客-CSDN博客

基于Docker搭建私有镜像仓库-腾讯云开发者社区-腾讯云

网络资源

使用nexus3搭建maven私服(超详细,建议收藏)_秃了也弱了。的技术博客_51CTO博客


本文作者:Maeiee

本文链接:Nexus3

版权声明:如无特别声明,本文即为原创文章,版权归 Maeiee 所有,未经允许不得转载!


喜欢我文章的朋友请随缘打赏,鼓励我创作更多更好的作品!