我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Docker 搭建nexus私服

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Docker 搭建nexus私服

有三种专门的Maven仓库管理软件可以用来帮助大家建立私服:Apache基金会的Archiva、JFrog的Artifactory和Sonatype的Nexus。而Nexus是当前最流行的Maven仓库管理工具。
 私服是一种特殊的远程仓库,它是架设在局域网内的仓库服务,私服代理广域网上的远程仓库。供局域网内的Maven用户使用。当Maven需要下载构件的时候,它从私服请求,如果私服上不存在该构件,则从远程仓库下载,缓存在私服上以后,再为Maven的下载请求提供服务。此外,一些无法从外部仓库下载到的构件也能从本地上传到私服上供大家服务。

1.png

 

私服的工作原理容如下图所示:

1.png

 

环境说明

操作系统:centos 7.6

java版本:1.8.0_211

maven版本:3.6.3

docker版本:19.03.5

ip地址:192.168.31.183

 

拉取镜像

拉取最新版本,目前最新版本是3.20.1

docker pull sonatype/nexus3

 

持久化目录

mkdir -p /data/nexus/data
chmod 777 -R /data/nexus/data

 

启动镜像

docker run -d -p 8081:8081 --name nexus -v /data/nexus/data:/nexus-data sonatype/nexus3

 

查看日志

docker logs -f nexus

输出:

...
2019-12-26 08:06:12,134+0000 INFO  [jetty-main-1] *SYSTEM org.eclipse.jetty.server.AbstractConnector - Started ServerConnector@42da9de6{HTTP/1.1,[http/1.1]}{0.0.0.0:8081}
2019-12-26 08:06:12,135+0000 INFO  [jetty-main-1] *SYSTEM org.eclipse.jetty.server.Server - Started @102936ms
2019-12-26 08:06:12,137+0000 INFO  [jetty-main-1] *SYSTEM org.sonatype.nexus.bootstrap.jetty.JettyServer - 
-------------------------------------------------
Started Sonatype Nexus OSS 3.20.1-01
-------------------------------------------------

等待几分钟时间,出现 Started Sonatype Nexus OSS 表示启动好了。

 

打开浏览器,访问 http://192.168.31.183:8081/

1.png

 

点击右侧的登录

1.png

查看管理员admin密码

# cat /data/nexus/data/admin.password

 

登录

1.png

 

开始设置

1.png

 

修改密码

1.png

 

确认配置

1.png

 

点击settings->Repository->Repositories

点击Create repositoty按钮

1.png

 

选择maven2 (proxy)

1.png

 

填写如下两个字段,分别是代理库的名称,所代理的上层库的url。阿里云url为:http://maven.aliyun.com/nexus/content/groups/public/

1.png

 

滚动到页面最下方,点击“Create repositoty”按钮。

1.png

 

可以看到刚刚新建的代理库已经存在了。

1.png

 

重新配置maven-public组,使其包含新建的aliyun-maven。在如上页面,点击maven-public,进入到配置页面。按下图进行修改。把aliyun-maven移至右侧,并向上移至第一位。然后点击保存。

 1.png

点击左侧菜单Repositoty>Repositories,进入到仓库列表页面,点击maven-public一行的copy按钮,然后复制弹出的url,后面配置maven时需要使用。

1.png

 

修改配置文件

cd /data/apache-maven-3.6.3/conf
cp settings.xml settings.xml.bak
vim settings.xml

 

添加服务器认证信息,增加红色部分内容

<!-- Another sample, using keys to authenticate.
    <server>
      <id>siteServer</id>
      <privateKey>/path/to/private/key</privateKey>
      <passphrase>optional; leave empty if not used.</passphrase>
    </server>
    --> 
    <server>
        <id>maven-releases</id>
        <username>admin</username>
        <password>abcd1234</password>
    </server>
    <server>
        <id>maven-public</id>
        <username>admin</username>
        <password>abcd1234</password>
    </server>
  </servers>

注意:修改为自己设置的密码。

 

增加mirrors

<mirror>
      <id>mirrorId</id>
      <mirrorOf>repositoryId</mirrorOf>
      <name>Human Readable Name for this Mirror.</name>
      <url>http://my.repository.com/repo/path</url>
    </mirror>
     -->
    <mirror>
      <id>maven-public</id>
      <name>maven-public</name>
        <url>http://192.168.31.183:8081/repository/maven-public/</url>
      <mirrorOf>*</mirrorOf>
    </mirror>
  </mirrors>

注意:修改ip地址为服务器ip

 

下载一个SpringBootDemo,进行打包测试。

yum install -y git
git clone https://github.com/solochen84/SpringBootDemo.git

 

使用mvn命令打包

# cd SpringBootDemo/
# mvn clean install
[INFO] Scanning for projects...
Downloading from maven-public: http://192.168.31.183:8081/repository/maven-public/org/springframework/boot/spring-boot-starter-parent/1.5.4.RELEASE/spring-boot-starter-parent-1.5.4.RELEASE.pom
Downloaded from maven-public: http://192.168.31.183:8081/repository/maven-public/org/springframework/boot/spring-boot-starter-parent/1.5.4.RELEASE/spring-boot-starter-parent-1.5.4.RELEASE.pom (7.5 kB at 7.6 kB/s)
Downloading from maven-public: http://192.168.31.183:8081/repository/maven-public/org/springframework/boot/spring-boot-dependencies/1.5.4.RELEASE/spring-boot-dependencies-1.5.4.RELEASE.pom
Downloaded from maven-public: http://192.168.31.183:8081/repository/maven-public/org/springframework/boot/spring-boot-dependencies/1.5.4.RELEASE/spring-boot-dependencies-1.5.4.RELEASE.pom (93 kB at 187 kB/s)
Downloading from maven-public: http://192.168.31.183:8081/repository/maven-public/com/fasterxml/jackson/jackson-bom/2.8.8/jackson-bom-2.8.8.pom
...
[INFO] Installing /root/SpringBootDemo/pom.xml to /root/.m2/repository/com/example/spring-boot-demo/0.0.1-SNAPSHOT/spring-boot-demo-0.0.1-SNAPSHOT.pom
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  04:13 min
[INFO] Finished at: 2019-12-30T20:15:26+08:00
[INFO] ------------------------------------------------------------------------

如果有输出:http://192.168.31.183:8081/repository/maven-public,说明正在使用 nexus私服

最后提示:BUILD SUCCESS,表示构建完成。

 

构建完成后,它会自动创建一个target目录,这里面存放jar包

# ls -l  target/
总用量 14824
drwxr-xr-x 3 root root       40 12月 30 20:13 classes
drwxr-xr-x 3 root root       25 12月 30 20:13 generated-sources
drwxr-xr-x 3 root root       30 12月 30 20:13 generated-test-sources
drwxr-xr-x 2 root root       28 12月 30 20:14 maven-archiver
drwxr-xr-x 3 root root       35 12月 30 20:13 maven-status
-rw-r--r-- 1 root root 15170293 12月 30 20:15 spring-boot-demo-0.0.1-SNAPSHOT.jar
-rw-r--r-- 1 root root     6517 12月 30 20:14 spring-boot-demo-0.0.1-SNAPSHOT.jar.original
drwxr-xr-x 2 root root      129 12月 30 20:13 surefire-reports
drwxr-xr-x 3 root root       17 12月 30 20:13 test-classes

 

启动jar包

# java -jar target/spring-boot-demo-0.0.1-SNAPSHOT.jar

  .   ____          _            __ _ _
 /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
 \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
  '  |____| .__|_| |_|_| |_\__, | / / / /
 =========|_|==============|___/=/_/_/_/
 :: Spring Boot ::        (v1.5.4.RELEASE)
...
2019-12-30 20:18:39.923  INFO 23047 --- [           main] o.s.j.e.a.AnnotationMBeanExporter        : Registering beans for JMX exposure on startup
2019-12-30 20:18:40.065  INFO 23047 --- [           main] s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat started on port(s): 8080 (http)
2019-12-30 20:18:40.077  INFO 23047 --- [           main] c.e.demo.SpringBootDemoApplication       : Started SpringBootDemoApplication in 8.484 seconds (JVM running for 9.609)

 

访问页面

http://192.168.31.183:8080/

效果如下:

1.png

 

如果有第三方的sdk,阿里云maven没有时,可以上传到nexus私服。

回到首页,点击Upload,上传到 maven-relaases,Extension会自动填充

需要提供 Group ID,Atriface ID,Version。这个问java开发要一个。

 1.png

 

 

但是,还是推荐将 第三方sdk嵌入到java项目里面,不使用nexus私服下载。如果一但nexus私服挂掉了,就很麻烦了。

nexus私服还是去阿里云maven下载比较好。

 

本文参考链接:

https://www.cnblogs.com/wotoufahaiduo/p/11223834.html
https://blog.csdn.net/lk142500/article/details/91357441
https://www.cnblogs.com/sybblogs/p/9835977.html

https://www.jianshu.com/p/e8e3ba719785


免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Docker 搭建nexus私服

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Docker 搭建nexus私服

有三种专门的Maven仓库管理软件可以用来帮助大家建立私服:Apache基金会的Archiva、JFrog的Artifactory和Sonatype的Nexus。而Nexus是当前最流行的Maven仓库管理工具。 私服是一种特殊的远程仓库,
2023-01-31

Linux搭建自己Nexus私服的实现方法

本文介绍如何在linux服务器通过docker搭建Nexus私服 一、安装Nexus 1、创建存放数据的位置# 进入个目录,这个你们随便 cd /srv # 创建个文件夹 mkdir nexus-data # 赋予权限,不然启动会报错,无操
2022-06-04

使用Nexus搭建Maven私服教程的方法步骤

本文主要介绍了使用Nexus搭建Maven私服教程的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
2023-01-16

Docker如何搭建私有GitLab服务

本文小编为大家详细介绍“Docker如何搭建私有GitLab服务”,内容详细,步骤清晰,细节处理妥当,希望这篇“Docker如何搭建私有GitLab服务”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。Linux操作
2023-07-02

docker怎么搭建私有仓库

要搭建私有仓库,您可以按照以下步骤操作:安装Docker:确保您的系统中已经安装了Docker。具体安装步骤可以参考Docker官方文档。创建一个新的Docker镜像:您可以选择一个基础镜像,比如官方的Docker Registry镜像。在
2023-10-26

docker私有仓库如何搭建

这篇文章将为大家详细讲解有关docker私有仓库如何搭建,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。docker-registry的部署 查看docker-registry版本信息:[ro
2023-06-04

Linux中怎么搭建Docker私有仓库

本篇内容主要讲解“Linux中怎么搭建Docker私有仓库”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Linux中怎么搭建Docker私有仓库”吧!1、下载registry镜像[root@lo
2023-06-27

docker私有镜像仓库怎么搭建

要搭建一个Docker私有镜像仓库,可以按照以下步骤进行操作:1. 安装Docker:首先确保你的服务器上已经安装了Docker引擎。可以参考Docker官方文档来完成安装。2. 下载并运行Docker Registry容器:Docker官
2023-09-23

怎么搭建配置Docker私有仓库

这篇文章主要讲解了“怎么搭建配置Docker私有仓库”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么搭建配置Docker私有仓库”吧!⛳️ 1.Docker容器三要素Docker 是一个开
2023-07-02

Linux中如何搭建Docker私有仓库

本篇内容介绍了“Linux中如何搭建Docker私有仓库”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!使用Docker私有仓库可以帮助我们节
2023-06-27

原神私服搭建二: 搭建服务端

原神私服搭建二: 搭建服务端 所需资源: 一:下载jar包 链接:https://github.com/Grasscutters/Grasscutter/releases 二:下载资源 resources(下面两个链接任选其一) 链接一
2023-08-17

Nexus私服忘记密码怎么办

这篇文章主要介绍Nexus私服忘记密码怎么办,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!Nexus私服如何找回密码?伴随着我们通过互联网使用的服务越来越多,我们的网上虚拟账号也越来越多,有时会因为忘记密码而烦恼。1
2023-06-27

如何搭建maven私服

小编给大家分享一下如何搭建maven私服,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!私服说明maven仓库分为本地仓库和远程仓库,而远程仓库又分为maven中央
2023-06-25

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录