【Docker】使用 Docker 部署 Maven 仓库

这篇具有很好参考价值的文章主要介绍了【Docker】使用 Docker 部署 Maven 仓库。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

在本文中,将介绍如何使用 Docker 部署一个 Maven 本地私服。Maven 私服可以帮助我们管理和共享本地的 Maven 依赖,提高开发效率。本文将使用 Sonatype Nexus 作为 Maven 私服,并使用 Docker Compose 来部署和管理容器。

准备工作

在开始之前,您需要安装以下工具:

  • Docker:用于创建、运行和管理容器。
  • Docker Compose:用于定义和运行多个 Docker 容器的工具。
  • Maven:用于构建和上传项目到 Maven 私服。

步骤一:编写 Docker Compose 文件

下面将使用 Docker Compose 来定义和运行 Sonatype Nexus 容器。首先,创建一个名为 docker-compose.yml 的文件并添加以下内容:

version: '3'
services:
  nexus:
    image: sonatype/nexus3
    ports:
      - "8081:8081"
    volumes:
      - nexus-data:/nexus-data

volumes:
  nexus-data:

这个 Docker Compose 文件定义了一个名为 nexus 的服务,使用 Sonatype Nexus 3 的镜像。将容器的 8081 端口映射到主机的 8081 端口,以便可以通过浏览器访问 Nexus 控制台。还定义了一个名为 nexus-data 的数据卷,用于持久化 Nexus 数据。

步骤二:启动容器

现在可以使用 Docker Compose 启动 Sonatype Nexus 容器。打开命令行界面并运行以下命令:

docker-compose up -d

这将下载 Sonatype Nexus 3 的镜像并启动一个名为 nexus 的容器。这个过程可能需要一些时间,具体取决于您的网络速度。过程如下图所示
docker 部署maven,工具使用,docker,maven,容器

一旦容器启动完成,您可以使用 docker ps 命令来检查容器的状态。您应该看到一个名为 nexus 的容器正在运行:

$ docker ps
CONTAINER ID   IMAGE             COMMAND                  CREATED          STATUS          PORTS                               NAMES
8e2ec0d72c80   sonatype/nexus3   "/usr/local/bin/nexu…"   33 seconds ago   Up 29 seconds   0.0.0.0:8081->8081/tcp, 8082/tcp   maven-private-repo_nexus_1

步骤三:配置 Nexus

3.1 访问 Nexus 控制台

现在可以通过浏览器访问 Nexus 控制台。在浏览器中输入 http://localhost:8081,您应该会看到 Nexus 的欢迎页面。

docker 部署maven,工具使用,docker,maven,容器

3.2 登陆

单击 “Sign In” 按钮,使用默认管理员凭据登录(用户名为 admin,密码为 admin123,根据版本会变化,应查阅官网)。当前版本店家 Sign In 后,提示Your admin user password is located in
/nexus-data/admin.password on the server.

docker 部署maven,工具使用,docker,maven,容器

进入容器内部查看密码:

# 进入容器,<container-id> 要替换为真实的ID,或者容器名称
docker exec -it <container-id> sh
# 查看密码
cat  /nexus-data/admin.password

docker 部署maven,工具使用,docker,maven,容器

3.3 仓库服务设置

登录成功后提示进行设置
docker 部署maven,工具使用,docker,maven,容器

可以根据需要选择是否设置。主要设置修改admin密码设置匿名用户访问是否开启

下图是开启匿名用用户访问权限(表示用户可以不用登录就能查该仓库中的依赖、并可以下载需要的依赖)后,在非登录状态下的页面
docker 部署maven,工具使用,docker,maven,容器

登录后,您应该会看到 Nexus 的仪表板。这里是您可以管理 Maven 仓库和上传依赖的地方。下图是admin 登录后的页面,可以看到左边多了Upload按钮,上方菜单条多了**设置(齿轮图标)**菜单。
docker 部署maven,工具使用,docker,maven,容器

3.4 添加新仓库

首先,需要创建一个 Maven 仓库。单击左侧导航栏中的 “Repositories”(仓库)选项卡,然后单击 “Create repository”(创建仓库)按钮。

docker 部署maven,工具使用,docker,maven,容器
在弹出的窗口中,选择 “maven2(hosted)” 仓库类型。
docker 部署maven,工具使用,docker,maven,容器
在下一个页面中,您需要指定仓库的名称、标识符和描述。将名称设置为 “maven-releases-xzbd”,并在描述中添加一些文本,以便您和其他开发人员理解仓库的用途。

docker 部署maven,工具使用,docker,maven,容器
单击 “Create repository”(创建仓库)按钮,Nexus 将创建一个新的 Maven 仓库。您可以在左侧导航栏中找到该仓库。
docker 部署maven,工具使用,docker,maven,容器

3.5 查看仓库列表

docker 部署maven,工具使用,docker,maven,容器

现在已经成功创建了一个 Maven 仓库,可以将依赖上传到该仓库中了。

步骤四:上传依赖

现在可以将 Maven 依赖上传到刚刚创建的 Maven 仓库中。

打开 Mavan 的 settings.xml配置文件(在Maven 安装目录的 conf 下),配置仓库认证信息:

<server>
      <id>nexus-releases-xzbd</id>
      <username>your_username_here</username>
      <password>your_password_here</password>
    </server>

打开您的 Maven 项目,并在 pom.xml 文件中添加以下内容:

<distributionManagement>
  <repository>
    <id>nexus-releases-xzbd</id>
    <name>Nexus Releases Repository</name>
    <url>http://localhost:8081/repository/maven-releases/</url>
  </repository>
</distributionManagement>

这将指定 Maven 上传依赖时使用的 Nexus 仓库。您需要将 url 值设置为您的 Nexus 仓库的 URL,这里使用的是刚刚创建的 maven-releases-xzbd 仓库。您还需要将 idname 设置为您喜欢的值。

保存 pom.xml 文件后,您可以使用以下命令将项目打包后上传到 Maven 仓库中:

mvn deploy

此命令将构建项目并将其上传到 Maven 仓库中。您可以在 Nexus 控制台中检查上传的依赖是否已正确显示在 maven-releases-xzbd 仓库中。


上传过程可能遇到失败认证失败、或上传的Jar包与仓库策略不一致情况,由于篇幅太长,请自行百度解决。

总结

在本文中,使用 Docker 和 Docker Compose 部署了一个 Maven 本地私服,并成功将 Maven 依赖上传到了该私服中。Maven 私服可以让更方便地管理和共享本地的 Maven 依赖,提高开发效率。如果您还没有使用 Maven 私服,强烈建议您尝试一下。文章来源地址https://www.toymoban.com/news/detail-565083.html

到了这里,关于【Docker】使用 Docker 部署 Maven 仓库的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Maven生成和推送Docker镜像到Docker仓库( IDEA 亲测可用)

    目录 1.搭建私有Docker镜像仓库 1.搭建docker registry 2.搭建docker registry web UI: 2.Maven创建并上传Docker镜像: 1.允许docker被远程访问 2.重启docker服务 3.构建和上传Docker镜像(不适用IDEA) 4.构建并上传Docker镜像(适用IDEA) 1.搭建docker registry 参考文档:docker-registry私有镜像库搭建并配置

    2023年04月08日
    浏览(41)
  • Maven打包构建Docker镜像并推送到仓库

    对于开发完成的服务要发布至服务器Docker时,我刚学习了解Docker时构建镜像方式是将我的本地服务先通过maven打包称为jar包,然后再上传至我的服务器上,通过Dockerfile将其构建成为镜像。后来才了解了直接通过maven命令直接打包构建的方式,以下是完成这一操作的步骤。 修改

    2024年02月05日
    浏览(66)
  • maven工具-maven的使用-镜像仓库、本地仓、IDEA使用maven

    添加第三方jar包 jar包之间的依赖关系 处理jar包之间的冲突 获取第三方jar包 将项目拆分成多个工程模块 实现项目的分布式部署 ​ Maven项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的项目管理工具软件。 ​ Maven 除了以程序构建能力为特色之外,

    2024年02月12日
    浏览(59)
  • 私有仓库工具Nexus Maven如何部署并实现远程访问管理界面

    Nexus是一个仓库管理工具,用于管理和组织软件构建过程中的依赖项和构件。它与Maven密切相关,可以作为Maven仓库的服务器。Nexus提供了一个集中式的位置,用于存储和共享构件,使团队成员能够方便地访问和部署这些构件。 Cpolar内网穿透是一种安全的内网穿透云服务,可以

    2024年01月18日
    浏览(46)
  • Docker(镜像、容器、仓库)工具安装使用命令行选项及构建、共享和运行容器化应用程序

    👧个人主页:@小沈YO. 😚小编介绍:欢迎来到我的乱七八糟小星球🌝 🔑本章内容:Docker工具安装使用、命令行选项及构建、共享和运行容器化应用程序时的主要步骤 记得 评论📝 +点赞👍 +收藏😽 +关注💞哦~ 提示:以下是本篇文章正文内容,下面案例可供参考 以下是在常

    2024年02月05日
    浏览(67)
  • docker-maven-plugin直接把镜像推到私有仓库

    接着上篇 推送到本地docker 我们已经把服务做成镜像推到docker,也可以通过docker login 私有地址,去push。麻烦 直接上代码  都得对起来,要不然push失败报 toomanyrequests: too many failed login attempts for username or IP address 加上,这个如果后期有其他仓库,再建个server即可 其实也可以做

    2024年02月11日
    浏览(33)
  • Docker 安装 Jenkins 并部署 Maven 项目

    在开始之前,我们需要保证系统中已经安装了Docker、JDK、Maven。 我这里使用的是 2.344 版本的 Jenkins,拉取命令如下: 需要稍微等一会,等待拉取完成。 镜像下载完成后,我们可以通过如下命令查看我们 docker 中的所有镜像。 这里可以看到我们刚才拉取的 2.344版本的 Jenkins 镜

    2024年02月13日
    浏览(50)
  • Docker+Jenkins+Gitee自动化部署maven项目

    各位看官老爷,本文为Jenkins实战,注重实际过程,阅读完会有以下收获: 了解如何使用Docker安装Jenkins 了解如何使用Jenkins部署maven项目 了解如何使用Jenkins+Gitee实现自动化部署 相信,正在读这篇文章的你,对Jenkins应该有或多或少的了解,就算没有也应该在某个地方听说过。👍

    2024年02月07日
    浏览(234)
  • docker容器:本地私有仓库、harbor私有仓库部署与管理

    目录 一、本地私有仓库 1、本地私有仓库简介 2、搭建本地私有仓库 3、容器重启策略介绍 二、harbor私有仓库部署与管理 1、什么是harbor 2、Harbor的特性 3、Harbor的构成 4、harbor部署及配置 ①部署docker-compose ②部署Harbor服务 ③登录创建项目 ④登录仓库并上传镜像 5、客户端测试

    2024年02月04日
    浏览(58)
  • Docker Compose 容器编排 + Docker--harbor私有仓库部署与管理

    目录 一、Docker Compose简介 1、Docker Compose 的YAML 文件格式及编写注意事项 2、Docker compose 使用的三个步骤 3、 Docker Compose配置常用字段 4、 Docker Compose 常用命令 5、 Docker Compose 文件结构 二: Docker Compose 安装 1、Docker Compose 环境安装  2、Docker Compose 文件结构 (1)准备依赖文件

    2024年02月15日
    浏览(50)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包