docker之搭建maven私服

2024-05-16 17:18
文章标签 maven docker 搭建 私服

本文主要是介绍docker之搭建maven私服,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一.基于Docker搭建Maven私服
1.下载镜像

docker pull sonatype/nexus3

2.配置参数启动容器
docker run -d -p 8081:8081 --name nexus --restart=always -v /opt/docker-nexus/data:/var/nexus-data sonatype/nexus3

参数说明:

  • -d 后台运行
  • -p 8081:8081 端口映射
  • –name nexus 设置容器别名
  • –restart=always 跟随docker启动
  • -v /opt/docker-nexus/data:/var/nexus-data 数据挂载到宿主机目录

访问 http://ip:8081

Maven私服启动容器稍微比较慢,等待1分钟即可。
默认登陆账号 admin 密码 admin123

二.创建Maven私服仓库
1.点击设置按钮 – Repository – Create Repository

image

2.创建仓库

点击Create repository,然后选择maven2(hosted)然后输入仓库名称(lss-release)。在version policy中选择这个仓库的类型,这里选择release,在Deployment policy中选择Allow redeploy(这个很重要)
image

3. 创建私服账号

点击左侧菜单栏的Users菜单,然后点击Create local user

注意:status选择Active Granted授权nx-admin和nx-anonymous

三.将jar包上传到Maven私服
1. 配置Maven settings.xml

找到Maven的settings.xml文件,在中添加如下配置:

<servers><!-- Maven私服配置 --><server><id>lss0555</id> <!-- id 也是用户名 --><username>lss0555</username>  <!-- 用户名--><password>888888</password> <!-- 密码--></server>
</servers>
2. 配置要上传项目的 pom.xml

注意:项目的限定版本一定为RELEASE,因为上传的对应仓库的存储类型为RELEASE ,如下:

    <parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.2.2.RELEASE</version><relativePath/> <!-- lookup parent from repository --></parent>
3.poml文件配置

1.根标签下添加仓库地址配置(也可以直接配置在settings.xml中,就不用每个项目都配置了)

 <project>  <--根标签--><!--指定仓库地址 --><distributionManagement><repository><!--此名称要和.m2/settings.xml中设置的ID一致 --><id>lss0555</id><url>http://192.168.102.129:8081/repository/lss_realse/</url></repository></distributionManagement></project>

2.标签的下添加发布代码的插件依赖

<build><plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><configuration><source>1.8</source> <!--指明源码用的Jdk版本--><target>1.8</target> <!--指明打包后的Jdk版本--></configuration></plugin><!--发布代码Jar插件 --><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-deploy-plugin</artifactId><version>2.7</version></plugin><!--发布源码插件 --><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-source-plugin</artifactId><version>2.2.1</version><executions><execution><phase>package</phase><goals><goal>jar</goal></goals></execution></executions></plugin></plugins></build>

3.mvn 打包
先mvn clean ,再进行 mvn deploy

[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 29.821 s
[INFO] Finished at: 2020-01-13T08:35:21+08:00
[INFO] Final Memory: 44M/288M

进入nexus查看,此时已经有了上传的jar包

可以直接在search界面中,search上传项目的名称,api

image

四.测试依赖信息,下载maven私服jar包

1.新建Maven项目,在pom.xml添加依赖:
    <dependencies><dependency><groupId>com.sxkj</groupId><artifactId>api</artifactId><version>0.0.3-RELEASE</version></dependency></dependencies><repositories><repository><id>lss0555</id><url>http://192.168.102.129:8081/repository/lss_realse/</url></repository></repositories>
2.在setting.xml里面加入
  <mirror><id>lss0555</id><mirrorOf>*</mirrorOf><name>Local Repository</name><url>http://192.168.102.129:8081/repository/lss_realse/</url></mirror>

五.问题

1.Incorrect username or password, or no permission to use the application.

首次登陆使用用户名密码:admin admin123提示这句话

解决:

1.查找该文件位置

find / -name ‘admin.password’

[root@localhost conf.d]# find / -name 'admin.password'
/var/lib/docker/volumes/5e9c11cb210d1c455816df186170072c0684be9aa2a8e4029192da0f499d2106/_data/admin.password

2.打开该文件查看密码

cd /var/lib/docker/volumes/5e9c11cb210d1c455816df186170072c0684be9aa2a8e4029192da0f499d2106/_data/cat admin.password
85fed095-d43f-4c2c-8021-f6cf9a979bef里面内容即为密码

这篇关于docker之搭建maven私服的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/995415

相关文章

ElasticSearch+Kibana通过Docker部署到Linux服务器中操作方法

《ElasticSearch+Kibana通过Docker部署到Linux服务器中操作方法》本文介绍了Elasticsearch的基本概念,包括文档和字段、索引和映射,还详细描述了如何通过Docker... 目录1、ElasticSearch概念2、ElasticSearch、Kibana和IK分词器部署

docker如何删除悬空镜像

《docker如何删除悬空镜像》文章介绍了如何使用Docker命令删除悬空镜像,以提高服务器空间利用率,通过使用dockerimage命令结合filter和awk工具,可以过滤出没有Tag的镜像,并将... 目录docChina编程ker删除悬空镜像前言悬空镜像docker官方提供的方式自定义方式总结docker

CentOS系统Maven安装教程分享

《CentOS系统Maven安装教程分享》本文介绍了如何在CentOS系统中安装Maven,并提供了一个简单的实际应用案例,安装Maven需要先安装Java和设置环境变量,Maven可以自动管理项目的... 目录准备工作下载并安装Maven常见问题及解决方法实际应用案例总结Maven是一个流行的项目管理工具

本地搭建DeepSeek-R1、WebUI的完整过程及访问

《本地搭建DeepSeek-R1、WebUI的完整过程及访问》:本文主要介绍本地搭建DeepSeek-R1、WebUI的完整过程及访问的相关资料,DeepSeek-R1是一个开源的人工智能平台,主... 目录背景       搭建准备基础概念搭建过程访问对话测试总结背景       最近几年,人工智能技术

使用maven依赖详解

《使用maven依赖详解》本文主要介绍了Maven的基础知识,包括Maven的简介、仓库类型、常用命令、场景举例、指令总结、依赖范围、settings.xml说明等,同时,还详细讲解了Maven依赖的... 目录1. maven基础1.1 简介1.2 仓库类型1.3 常用命令1.4 场景举例1.5 指令总结

5分钟获取deepseek api并搭建简易问答应用

《5分钟获取deepseekapi并搭建简易问答应用》本文主要介绍了5分钟获取deepseekapi并搭建简易问答应用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需... 目录1、获取api2、获取base_url和chat_model3、配置模型参数方法一:终端中临时将加

SpringBoot项目中Maven剔除无用Jar引用的最佳实践

《SpringBoot项目中Maven剔除无用Jar引用的最佳实践》在SpringBoot项目开发中,Maven是最常用的构建工具之一,通过Maven,我们可以轻松地管理项目所需的依赖,而,... 目录1、引言2、Maven 依赖管理的基础概念2.1 什么是 Maven 依赖2.2 Maven 的依赖传递机

关于Maven生命周期相关命令演示

《关于Maven生命周期相关命令演示》Maven的生命周期分为Clean、Default和Site三个主要阶段,每个阶段包含多个关键步骤,如清理、编译、测试、打包等,通过执行相应的Maven命令,可以... 目录1. Maven 生命周期概述1.1 Clean Lifecycle1.2 Default Li

关于Maven中pom.xml文件配置详解

《关于Maven中pom.xml文件配置详解》pom.xml是Maven项目的核心配置文件,它描述了项目的结构、依赖关系、构建配置等信息,通过合理配置pom.xml,可以提高项目的可维护性和构建效率... 目录1. POM文件的基本结构1.1 项目基本信息2. 项目属性2.1 引用属性3. 项目依赖4. 构

springboot 加载本地jar到maven的实现方法

《springboot加载本地jar到maven的实现方法》如何在SpringBoot项目中加载本地jar到Maven本地仓库,使用Maven的install-file目标来实现,本文结合实例代码给... 在Spring Boothttp://www.chinasem.cn项目中,如果你想要加载一个本地的ja