【Docker】Docker安装部署maven私服

文章目录

  • 镜像拉取
  • 构建nexus实例
  • 登录maven私服
    • 如何查看实例初始化的admin密码呢?
      • 1.查看容器挂载卷
      • 2.找到nexus_nexus_data查看挂载卷详情
      • 3.查看admin账号密码
      • 4.登录并重置密码
  • 使用nexus私服
    • 1.设置settings.xml
    • 2.设置idea pom
  • 出现的问题
  • 小插曲

镜像拉取

docker pull sonatype/nexus3

在这里插入图片描述

构建nexus实例

  • docker-compose up -d
version: '3'services:nexus:image: sonatype/nexus3  # 使用的 Nexus 镜像ports:- "8081:8081"  # 将容器的 8081 端口映射到宿主机的 8081 端口volumes:- nexus_data:/nexus-data  # 挂载数据卷,用于持久化 Nexus 数据restart: always  # 容器停止后自动重启networks:- my_network  # 加入自定义网络networks:my_network:  # 自定义网络配置volumes:nexus_data:  # 定义数据卷driver: local  # 使用本地驱动,数据存储在本地
  • docker run
docker run -d -p 8081:8081 --name nexus --privileged=true -v /root/nexus-data:/nexus-data --restart=always sonatype/nexus3 

登录maven私服

关闭防火墙,访问http://ip:8107
Maven私服启动容器稍微比较慢,等待一会即可。

注:账号为admin,密码在映射数据集下 admin.password文件里面

在这里插入图片描述

此案例使用docker-compose 创建实例

如何查看实例初始化的admin密码呢?

1.查看容器挂载卷

docker volume ls

在这里插入图片描述

2.找到nexus_nexus_data查看挂载卷详情

docker volume inspect nexus_nexus_data

在这里插入图片描述

3.查看admin账号密码

在这里插入图片描述

4.登录并重置密码

在这里插入图片描述

使用nexus私服

1.设置settings.xml

<servers><server><id>maven-releases</id><username>admin</username><password>admin123</password></server><server><id>maven-snapshots</id><username>admin</username><password>admin123</password></server>
</servers>

在这里插入图片描述

2.设置idea pom

<!--注意限定版本一定为RELEASE,因为上传的对应仓库的存储类型为RELEASE --><!--指定仓库地址 --><distributionManagement><repository><!--此名称要和.m2/settings.xml中设置的ID一致 --><id>maven-releases</id><!--上传的位置--><url>http://192.168.33.101:8081/repository/maven-releases/</url></repository><snapshotRepository><!--此名称要和.m2/settings.xml中设置的ID一致 --><id>maven-snapshots</id><!--上传的位置--><url>http://192.168.33.101:8081/repository/maven-snapshots/</url></snapshotRepository></distributionManagement><build><plugins><!-- 将源码打包插件 --><plugin><artifactId>maven-source-plugin</artifactId><version>2.2.1</version><configuration><attach>true</attach></configuration><executions><execution><phase>compile</phase><goals><goal>jar</goal></goals></execution></executions></plugin><!-- deploy时只上传jar包到远程仓库的配置 --><!--发布代码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>

打包编译成功(下面打的是一个 稳定版jar包)

在这里插入图片描述

nexus 私服

在这里插入图片描述

打包编译成功(下面打的是一个 快照jar包)

在这里插入图片描述

出现的问题

问题1:Return code is: 401, ReasonPhrase: Unauthorized. -> [Help 1]

  • 大概率是settings.xml 和 pom 设置不对(主要)
  • maven 版本过低 推荐3.6.3
  • nexus 仓库发布策略更改为Allow redeploy

在这里插入图片描述

小插曲

1. idea 怎么打稳定版本和快照版本?

在Nexus仓库中,一个仓库一般分为public(RELEASE)仓和SNAPSHOT仓,前者存放正式版本,后者存放快照版本。如果在项目配置文件中(无论是build.gradle还是pom.xml)指定的版本号带有-SNAPSHOT后缀,比如版本号为laowang-2.0-SNAPSHOT,那么打出的包就是一个快照版本。

2. 为什么快照版本 后面带了一堆数字?

Maven 中的快照版本是一种特殊的版本,用于代表正在开发中的项目版本。在快照版本号后面的数字通常是一个时间戳或者一个递增的构建号

快照版本的命名约定通常遵循以下格式:<version>-SNAPSHOT。其中,<version> 是项目的基础版本号,而 -SNAPSHOT 则表示这是一个快照版本。在实际使用中,Maven 会将快照版本视为动态版本,它会定期检查仓库以获取最新的快照构建。

在快照版本号后面的数字通常是一个时间戳,用于标识构建的时间或者一个递增的构建号,用于表示每个快照构建的唯一性。这些数字有助于区分不同时间点或不同构建中的快照版本。

举例来说,一个快照版本号可能是 1.0-SNAPSHOT,而后面的数字可能会是类似于 20231218-1345(表示日期和时间)或者类似于 42(表示递增的构建号)这样的格式。这些数字会随着每次快照构建而变化,确保每个快照版本在仓库中都是唯一的。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/231664.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Spring Cloud + Vue前后端分离-第6章 通用代码生成器开发

Spring Cloud Vue前后端分离-第6章 通用代码生成器开发 6-1 代码生成器原理介绍 1.增加generator模块&#xff0c;用于代码生成 2.集成freemarker 通用代码生成器开发 FreeMarker 是一款模版引擎&#xff0c;通过模板生成文件&#xff0c;包括html页面&#xff0c;excel …

Ubuntu 18.04配置NFS服务器以及配置时遇到NFS问题

1.安装相关软件 sudo apt-get install nfs-kernel-server sudo apt-get install nfs-common 2.配置共享目录 2.1修改exports文件 sudo vi /etc/exports在最后添加如下并保存退出 /home/xiaowu/nfs 192.168.31*(rw,sync,no_root_squash,no_subtree_check) /home/xiaowu/nfs…

计算机组成原理(输入输出系统-----程序查询方式)

目录 程序查询方式 一.程序查询方式的流程 1.查询流程 2.程序流程 二.程序查询方式的接口电路 程序查询方式 一.程序查询方式的流程 1.查询流程 单个设备&#xff1a; 如果在传输过程当中只有一个内存和I/O之间数据传输&#xff0c;在执行程序的过程当中CPU会执行出来一…

Windows11编译x265源码生成Visual Studio工程详细步骤

概述 x265是一款开源符合HEVC标准的编码器&#xff0c;也属于VLC项目之一。 由于x265是开源的&#xff0c;因此它得到了广泛的应用和开发。许多开源项目和商业产品都使用x265进行视频压缩处理。同时&#xff0c;x265也支持多种编程语言和平台&#xff0c;使得开发者可以方便地…

Docker与云计算平台集成:AWS、Azure、GCP完全指南

Docker和云计算平台的结合&#xff0c;如AWS&#xff08;Amazon Web Services&#xff09;、Azure&#xff08;Microsoft Azure&#xff09;和GCP&#xff08;Google Cloud Platform&#xff09;&#xff0c;为现代应用的构建和部署提供了巨大的便利性。本文将深入研究如何与这…

02.微服务组件 Eureka注册中心

1.Eureka注册中心 服务提供者与消费者&#xff1a; 服务提供者:一次业务中&#xff0c;被其它微服务调用的服务。(提供接口给其它微服务)服务消费者:一次业务中&#xff0c;调用其它微服务的服务。&#xff08;调用其它微服务提供的接口)一个服务是消费者还是提供者&#xff…

Redis设计与实现之Lua 脚本

目录 一、 Lua 脚本 1、初始化 Lua 环境 2、脚本的安全性 3、脚本的执行 4、 EVAL 命令的实现 定义 Lua 函数 执行 Lua 函数 5、 EVALSHA 命令的实现 二、 小结 一、 Lua 脚本 Lua 脚本功能是 Reids 2.6 版本的最大亮点&#xff0c;通过内嵌对 Lua 环境的支持&#xf…

Mysql之约束上篇

Mysql之约束上篇 约束的概述为什么需要约束什么是约束约束的分类 非空约束作用关键字特点添加非空约束删除非空约束 唯一性约束关键字特点添加唯一约束关于复合唯一约束删除唯一约束查看索引 主键约束(非空唯一性约束)作用关键字特点添加主键约束关于复合主键删除主 约束的概述…

探索拉普拉斯算子:计算机视觉中用于边缘检测和图像分析的关键工具

一、介绍 拉普拉斯算子是 n 维欧几里得空间中的二阶微分算子&#xff0c;表示为 ∇。它是函数梯度的发散度。在图像处理的上下文中&#xff0c;该运算符应用于图像的强度函数&#xff0c;可以将其视为每个像素具有强度值的二维信号。拉普拉斯算子是计算机视觉领域的关键工具&am…

了解 SBOM (软件物料清单)

近年来&#xff0c;开源软件在开发中的采用激增&#xff0c;目前已占已构建软件的高达 90%。它在全球公司中的受欢迎程度源于成本节约和产品上市时间的加快。然而&#xff0c;在集成开源软件组件时&#xff0c;有一个关键的方面需要考虑。 Synopsys 报告84% 的商业和专有代码库…

Qt-QTransform介绍与使用

QTransform是一个用于二维坐标系转换的类。我们知道Qt的坐标系是左上角为原点&#xff0c;x轴向右&#xff0c;y轴向下&#xff0c;屏幕上每个像素代表一个单位&#xff0c;那么&#xff0c;如果我们想要在屏幕上建立自己的坐标系用于绘制&#xff0c;就需要借助QTransform。 …

Guitar Pro8.1最新2024中文免激活版下载(附教程)

Guitar Pro 8是一款功能强大的指法阅读器和编辑器&#xff0c;它允许您编辑吉他、贝斯和尤克里里的乐谱和指法谱&#xff0c;并为鼓或钢琴创建背景音轨。轻松创建、播放和共享您的标签&#xff01;快速的进行乐谱播放并进行练习&#xff0c;也可以进行编辑操作&#xff0c;允许…

机器学习---推荐系统案例(一)

一、推荐系统-数据处理流程 推荐系统数据处理首先是将Hive中的用户app历史下载表与app浏览信息表按照设备id进行关联&#xff0c;然后将关联数据使用python文件进行处理&#xff0c;将数据预处理为label和feature两列的临时数据&#xff0c;后期经过处理转换成逻辑回归 模型的…

【经典LeetCode算法题目专栏分类】【第5期】贪心算法:分发饼干、跳跃游戏、模拟行走机器人

《博主简介》 小伙伴们好&#xff0c;我是阿旭。专注于人工智能AI、python、计算机视觉相关分享研究。 ✌更多学习资源&#xff0c;可关注公-仲-hao:【阿旭算法与机器学习】&#xff0c;共同学习交流~ &#x1f44d;感谢小伙伴们点赞、关注&#xff01; 分发饼干 class Solutio…

【Qt之Quick模块】1. 概述及Quick应用程序创建流程

概述 Qt的Quick模块是用于创建现代化、动态和响应式用户界面的工具集。它是基于QML&#xff08;Qt Meta-Object Language&#xff09;和JavaScript的。 QML是一种声明性的语言&#xff0c;用于描述用户界面的结构和行为。它使用层叠样式表&#xff08;CSS&#xff09;的语法来…

Apache Flume(5):多个agent模型

可以将多个Flume agent 程序连接在一起&#xff0c;其中一个agent的sink将数据发送到另一个agent的source。Avro文件格式是使用Flume通过网络发送数据的标准方法。 从多个Web服务器收集日志&#xff0c;发送到一个或多个集中处理的agent&#xff0c;之后再发往日志存储中心&…

电脑操作系统深度剖析:Windows、macOS和Linux的独特特性及应用场景

导言 电脑操作系统是计算机硬件和应用软件之间的桥梁&#xff0c;不同的操作系统在用户体验、性能和安全性方面有着独特的特色。电脑操作系统是计算机系统中的核心组件&#xff0c;不同的操作系统在设计理念、用户体验和应用领域上存在显著差异。本文将深入探讨几种常见的电脑操…

安全芯片是什么?为什么可以应用在加密卡上?

安全芯片是指芯片内带有微处理器CPU、随机数发生器、硬件密码算法、存储单元&#xff08;包括随机存储器RAM、程序存储器ROM&#xff08;FLASH&#xff09;、用户数据存储器EEPROM&#xff09;以及芯片操作系统COS的智能芯片&#xff0c;相当于一台微型计算机&#xff0c;不仅具…

【经典LeetCode算法题目专栏分类】【第6期】二分查找系列:x的平方根、有效完全平方数、搜索二位矩阵、寻找旋转排序数组最小值

《博主简介》 小伙伴们好&#xff0c;我是阿旭。专注于人工智能AI、python、计算机视觉相关分享研究。 ✌更多学习资源&#xff0c;可关注公-仲-hao:【阿旭算法与机器学习】&#xff0c;共同学习交流~ &#x1f44d;感谢小伙伴们点赞、关注&#xff01; X的平方根 class Soluti…

【Image】图像处理

计算机视觉 CV Perception 如自动驾驶领域。 只要是从所谓的图像当中去抽取信息的过程&#xff0c;我们都叫做Perception。 视觉检测可以涵盖二维检测&#xff0c;如车辆、人和信号灯的检测。另外&#xff0c;还可以控制三维信息&#xff0c;直接在三维空间中操作数据。 SL…