Nexus3 安装 及 配置 docker 私有、代理 仓库
一、Nexus3 私库管理器
Nexus全称Sonatype Nexus,是一种特殊的远程仓库,它是架在局域网内的仓库服务。可以用于局域网中的 docker、maven、npm、yum 等私服代理,并且支持私有仓库。
下面通过实验来认识下 Nexus3 私库管理器,以及配置 docker 私有、代理 仓库。
二、Nexus3 安装
本文通过 docker-compose 的方式快速搭建 Nexus3 环境,所以在实验前请确保已经安装好了 docker 和 docker-compose 环境。
- 创建数据挂载目录并修改权限:
mkidr -p /opt/nexus/data && chmod 777 /opt/nexus/data
- 创建 docker-compose.yml 文件,写入以下内容:
version: '2.0'
services:nexus:restart: alwaysimage: sonatype/nexus3:3.37.3container_name: nexus3volumes:- /opt/nexus/data:/nexus-dataports:- "8081:8081"- "6000:6000"- "6001:6001"environment:- "INSTALL4J_ADD_VM_PARAMS=-Xms128m -Xmx512m -XX:MaxDirectMemorySize=512m -Djava.util.prefs.userRoot=/nexus-data/javaprefs"- TZ=Asia/Shanghai
其中 8081 为 Nexus3 web页面的端口,6000 和 6001 分别为 docker 代理和私服的端口,这个是后面配置中指定的,这里可以预先开放端口。由于Nexus3 依赖于JDK,因此环境变量中指定了JVM的一些参数,可以根据自己服务器的实际情况修改。
- 启动服务
docker-compose up -d
服务启动较慢,需要等待一会,可以查看 log ,看是否成功启动:
docker-compose logs
出现以下日志,则证明启动成功!
- 浏览器访问
http://ip:8081
:
- 点击右上角
Sign in
开始登录,用户为admin
,密码在/nexus-data/admin.password
中:
docker exec -it nexus3 cat /nexus-data/admin.password && echo
- 登录成功后 点击
next
,需要修改密码,修改个自己的密码:
- 下面弹出的是否启用匿名访问,我这里选是:
- 最后点击
Finish
环境就搭建完成了,下面开始配置 docker 私有、代理仓库吧。
三、配置 docker 私有、代理 仓库
在 Nexus3
中对于docker
的支持又 hosted
(自托管私有仓库)、proxy
(代理)、group
(聚合)三种模式,其中 group
模式可以将多个模式集中成一个地址访问,比如使用 hosted
模式搭建私有的 docker
仓库,一些项目中的镜像都上传到这个地方。使用 proxy
模式代理远程的仓库比如 dockerHub
,可以在局域网中下载外网的镜像。此时就可以通过 group
默认将hosted
模式和proxy
模式聚合成一个地址访问,这样在下载镜像的时候如果是私服的镜像直接在私服拉取了,如果没有再通过代理拉取远程的镜像。
下面开始搭建上面的模式:
1. 首先我们先创建三个 Blob Stores
,分别存放三种模式产生的文件:
首先点击上方的设置图标,选择 Blob Stores
,然后点击 右边的 Create Blob Stores
- 创建
docker-hosted
- 创建
docker-proxy
- 创建
docker-group
- 创建完成后在列表中可以看到
2. 下面开始创建 hosted
模式私服仓库
点击当前页的 Repositories
,然后点击 左上角的 Create repositories
:
选中 docker(hosted)
模式:
指定基本信息及配置:
其中开放协议使用的 HTTP,端口就是上面安装时候释放的 6001 ,下面 Blob store
选择上面创建的:
最后点击最下面的 Create repositories
完成创建。
2. 接着创建 proxy
模式代理仓库
选中 docker(proxy)
,代理模式可以不用开放协议端口,因为后面拉取镜像统一使用 group
模式进行拉取:
同样填写信息:
下面需要填写一个代理地址,可以指定为:https://registry-1.docker.io
,下面 Docker Index
可以使用 Docker Hub
的:
下面 Blob store 同样使用上面创建的:
最后点击最下面的 Create repositories
完成创建。
3. 接着创建 group
模式代理仓库
选中 docker(group)
:
同样填写信息,注意端口需要使用 6000 了:
下面 Blob store 同样使用上面创建的,注意下面的 group 需要选中上面创建好的两种模式:
最后点击最下面的 Create repositories
完成创建。
到这就已经创建好三种模式了,可以在列表中看到创建的仓库:
下面就可以在 docker 客户端指定仓库为上面创建的仓库了,下面继续测试一下。
四、docker 客户端测试
修改 /etc/docker/daemon.json
文件,在 insecure-registries
中,增加私有配置:
{"registry-mirrors": ["https://你的阿里云id.mirror.aliyuncs.com"],"insecure-registries": ["192.168.40.171:6000","192.168.40.171:6001"]
}
重启 docker
:
systemctl restart docker
登录 私服仓库:
docker login -u admin -p nexus 192.168.40.171:6000docker login -u admin -p nexus 192.168.40.171:6001
此时如果报 failed with status: 401 Unauthorized
异常:
这个是没有使用 SSL证书和域名,需要修改下 Realms
中的配置:
下面再进行登录就可以了:
拉取镜像
docker pull 192.168.40.171:6000/nginx
可以看到已经拉取到镜像,可以在 nexus3 的 web 页面看到该镜像:
上传镜像
首先标记镜像并更换个名称方便看到效果
docker tag 192.168.40.171:6000/nginx:latest 192.168.40.171:6001/test/nginxbxc:latest
推送镜像
docker push 192.168.40.171:6001/test/nginxbxc:latest
查看 web 页面:
Nexus3 安装 及 配置 docker 私有、代理 仓库相关推荐
- nexus3的配置阿里云代理仓库
运行界面 image.png 配置阿里云代理仓库 image.png image.png 将阿里云配置到首位 image.png
- AntDeploy工具一键发布镜像到腾讯云Docker私有镜仓库
AntDeploy工具功能简介 支持docker一键部署(支持netcore) 支持iis一键部署(支持netcore和framework) 支持windows服务一键部署(支持netcore和fra ...
- 华为云ECS-CentOS8.2部署(Harbor)Docker私有镜像仓库
华为云ECS-CentOS8.2部署(Harbor)Docker私有镜像仓库 1.背景 2.环境说明 3.在CentOs中安装所需要的软件包 4.部署Harbor 4.1.安装docker-compo ...
- Ubuntu16.04多主机集群上手动部署Kubernetes,配置docker私有registry,配置Kubernetes-dashboard WEB ui
Ubuntu16.04多主机集群上手动部署Kubernetes,配置docker私有registry,配置Kubernetes-dashboard WEB ui 2017年03月17日 20:51:4 ...
- 搭建Docker私有镜像仓库
一.Docker镜像和容器的区别 Docker的整个生命周期由三部分组成:镜像(image)+容器(container)+仓库(repository) 容器等于镜像加上可读层,容器是由镜像实例化而来的 ...
- Maven nexus私服仓库类型说明及配置阿里云代理仓库
Maven当中配置的一般是仓库组的连接地址. 依赖的查找顺序. 配置阿里云代理仓库. 将阿里云代理仓库添加到仓库组中.
- windows系统nexus3安装和配置
一.前言 为什么要在本地开发机器上安装nexus?首先声明公司内部是有自己的nexus仓库,但是对上传jar包做了限制,不能畅快的上传自己测试包依赖.于是就自己在本地搭建了一个nexus私服,即可以使 ...
- Docker私有镜像仓库是什么?
Docker镜像仓库概述 镜像仓库作为Docker技术的核心组件之一,其主要作用就是负责镜像内容的存储和分发.Docker镜像仓库从使用范围来说分为"公有镜像仓库"和"私 ...
- Docker 私有镜像仓库的搭建及认证
转自乐字节 DockerHub 为我们提供了很多官方镜像和个人上传的镜像,我们可以下载机构或个人提供的镜像,也可以上传我们自己的本地镜像,但缺点是: 由于网络的原因,从 DockerHub 下载和上传 ...
- 基于 registry 搭建 Docker 私有镜像仓库
dockerhub: https://registry.hub.docker.com/_/registry 安装命令 docker run -p 5000:5000 -d -v /opt/regist ...
最新文章
- linux下的qt缺少iostream,c – iostream:没有这样的文件或目录
- 浏览器缓存详解:expires,cache-control,last-modified,etag详细说明
- 10g数据库入门与实践 oracle_从实践中学习Oracle SQL笔记一
- SQL Server 数据库查找重复记录的几种方法
- 信息学奥赛一本通(2018:【例4.3】输出奇偶数之和)
- C++基础教程之函数
- 我的计时软件TimeDogV13
- 浏览器嗅探器检测(BrowserDetect.js)程序神器使用
- 【源码分享】-c++界面源代码分享
- MapReduce实操5-1数据预处理——巴西利亚历史气温数据分析
- 关于linux的filp->private_data解释
- Java网课基础笔记(4)19-07-16
- 人生没有白走的路,每一步都算数
- Cisco Packet Tracer的简单使用
- 设计模式——单例模式(创建型模式)
- 如何采集微信公众号历史数据
- Windows 仍在设置此设备的类配置。 (代码 56)
- 什么是OpenCV?哪些人使用OpenCV?
- 【报告分享】2021年百万经纪人调查报告-58安居客房产研究院 (附下载)
- 保密+完整+可用+安全,规避代码安全「马奇诺防线」,构建软件供应链整体安全