使用Nexus3创建docker个人仓库(匿名登录)

@[TOC](文章目录)

前言

之前一直想用nexus创建一个docker私有仓库,找了很多网上的攻略发现都有问题,经过自己一番折腾,总结了一下,供大家避坑。


一、镜像下载

目前docker hub有官方发布的nexus3版本,直接可以使用docker命令获取最新镜像。

docker pull sonatype/nexus3

本人安装的版本:3.30.0-01

二、Nexus配置

1.启动容器

docker run -d -p 8081:8081 -p 5000:5000 -p 9090:9090 --restart=always --name nexus sonatype/nexus3

重要参数讲解:

-p 映射端口,前面是本地端口,后面的是容器端口,这里最好能多放几个端口出来(最好是一段端口),后面便于使用。

注:8081是nexus3的GUI默认端口,一定要放出。

2.登录GUI

如果是本地登录,在浏览器中直接输入:

localhost:8081

外部登录使用nexus所在服务的外部IP+Port进行登录。

进入页面后,nexus会开始执行初始化,等待初始化完成后,点击右上角“Sign in”图标。
从提示窗口获取包含默认密码的文件名,然后在nexus所在的容器中获取密码。

password=`docker exec -it nexus cat /nexus3-data/admin.password`
User: admin
Password: $password

登录成功后,记得修改登录密码。

3.创建仓库

找到“Server administration and configuration”,选择repository -> repositories,点击“Create repository”,找到docker,这里有三类docker仓库,分别是“group”、“hosted”、“proxy”,大致的区别如下,在此不做详细说明,各位自己在实践中自行体会。

名称类型
group多个类型外部仓库聚合
hosted单个本地仓库
proxy单个外部仓库链接

本人这里使用“docker(hosted)”作为daemon模板,除标记部分,其他的均使用了默认配置。
注:这里的HTTP配置端口必须使用容器创建时的已经映射端口否则仓库将无法访问。
最好不要使用8081,这里我用的是5000,如果用8081是否能正常工作等待验证。

在这里插入图片描述

4.创建Role

选择security -> Role, 点击“Create role”,在“Privileges”中“Available”用关键字“view-docker”过滤信息,双击下面选项使其放入“Given”中。

nx-repository-view-docker-*-browse
nx-repository-view-docker-*-read

如果需要进行镜像push,添加“add”和“edit”,因为nexus权限非常的细化,这里不再逐一讨论,大家在实践中慢慢领悟。
在这里插入图片描述
这里的“ * ”为通配符,即匹配所有的docker仓库,也可以只匹配某一个docker仓库。

5.创建User

选择“Create local user”,将刚才创建好的role添加到“Granted”中。
然后就可以使用该用户进行镜像操作。

6.激活Realm

选择“Realms”,找到“Docker Bearer Token Realm”,将其置为“Active”。

三.配置匿名

如果需要在不做login的情况下对镜像进行pull、push操作,需要做如下配置。

1.修改role

在User中将“nx-anonymous”添加到该用户中,如果使用“anonymous”,则需要将之前创建的docker相关的role添加给它。

2.激活Anonymous Access

选择“Anonymous Access”,并做如下配置。

在这里插入图片描述


总结

个人理解nexus是一个非常好用综合仓库管理工具,不仅可以管理image,也可以管理charts、yum、maven等等。以及它配合仓库管理的一系列其他功能,都很强大。大家可以多多挖掘。
本人能力水平有限,分享自己的一点粗浅经验,有不足之组可留言补充。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值