一个伪linux粉丝的blog

  1. 首页
  2. network
  3. 正文

nexus repository k8s

11 5 月, 2022 754点热度 0人点赞 0条评论

前言:

两年前帮客户排障时搭过一套 nexus 仓库,内部环境早铲掉了,这次有需要再搭一套,简单记录下当中的几个注意点。

参考文档

官网:https://www.sonatype.com/products/nexus-repository

官网文档:https://help.sonatype.com/repomanager3/planning-your-implementation/resiliency-and-high-availability/single-data-center-on-premises-deployment-example-using-kubernetes

架构图

Repo-overview

部署

部署 yaml 戳这里👇

https://cnrock.github.io/t/nexus3.yml

前置条件,有一个配置好的managed-nfs-storage sc

# kubectl get sc
NAME PROVISIONER RECLAIMPOLICY VOLUMEBINDINGMODE ALLOWVOLUMEEXPANSION AGE
local-storage kubernetes.io/no-provisioner Delete Immediate false 20d
managed-nfs-storage (default) dsp.dc/ifs Delete Immediate false 20d

部署kubectl apply -f nexus3.yml

补充一个8082 的负载均衡,为了后面 docker-group 的对外暴露

 

  • nginx 反代+域名解析

server {
listen 80 ;
server_name nexus.ats.io;
location / {
proxy_set_header Host $host;
proxy_pass http://10.29.121.28:30082/;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
server {
listen 80 ;
server_name nexus-ui.ats.io;
location / {
proxy_set_header Host $host;
proxy_pass http://10.29.121.28:30081/;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}

域名解析用了内网coredns

nexus.ats.io. 3600 IN A 10.23.2.249
nexus-ui.ats.io. 3600 IN A 10.23.2.249

dd

效果图

ui 效果

  •  仓库 proxy

例1, 其他按需设置

  • 仓库 group,例如 依次 docker-dail,ghcr.io, k8s.gcr.io, docker.elastic.co
  • docker pull 拉包测试

    实际上这个包来源于 k8s.gcr.io/coredns:1.6.7,他会按上图 group 排序  docker-dail,ghcr.io, k8s.gcr.io, docker.elastic.co ,依次查找

  • maven 仓库 group
    同样会按照排序拉取maven 仓库里面的包
  •  配置 ldap 账户,这里有 2个地方要注意, 不然有2个401 等着你
    首先是管理员 admin 登陆,提示 401
  • docker login nexus-ui.ats.io -u admin
    Password:
    Error response from daemon: login attempt to http://nexus-ui.ats.io/v2/ failed with status: 401 Unauthorized

    解决办法 nexus 管理后台->安全→Realms,添加"Docker Bearer Token Realm“至激活,如图:

    ldap 账户 配置后, ldap 账户 docker login  依然提示  Error response from daemon: Get http://nexus.ats.io/v2/: unauthorized: authentication required

    解决办法: user--ldap-选中需要给权限的账户

    赋予 admin 或 匿名权限,这样ldap 账户就能登陆了
    # docker login nexus.ats.io -u jie.wan
    Password:
    Login Succeeded

相关文章:

  1. npm-group 500 with
  2. 安装Nginx
  3. 你的网站到底是慢在哪里?
  4. 小站已经被alexa收录啦,哈哈
标签: nexus
最后更新:11 5 月, 2022

wanjie

这个人很懒,什么都没留下

点赞
< 上一篇
下一篇 >

文章评论

razz evil exclaim smile redface biggrin eek confused idea lol mad twisted rolleyes wink cool arrow neutral cry mrgreen drooling persevering
取消回复

This site uses Akismet to reduce spam. Learn how your comment data is processed.

归档
分类
  • network / 332篇
  • Uncategorized / 116篇
  • unix/linux / 121篇
  • 业界资讯 / 38篇
  • 公司杂事 / 11篇
  • 数码影像 / 12篇
  • 美剧 / 3篇
  • 美图共赏 / 21篇
  • 英语学习 / 3篇
标签聚合
dreamhost 天翼live nexus 邮件归档 ldap deepseek kubectl squid debian 虚拟主机 jira kernel Ubuntu postgres d90 wget Google gitlab google-chrome 浏览器 docker k8s 泰国 网站运营 dreamhost空间 Google Voice openssl ssh VPS Nginx

COPYRIGHT © 2008-2025 wanjie.info. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang