修改 Sonatype Nexus2 的 baseUrl

docker笔记 同时被 2 个专栏收录
3 篇文章 0 订阅
1 篇文章 0 订阅

背景:
搭建 nexus 是使用的 sonatype 的官方 nexus docker 镜像,跑起来之后,发现访问路径带了 /nexus 而不是 /,于是想修改这个路径。

尝试方法一:
以管理员账号登录,打开 Administration 中的 Servier 面板,修改 Application Server Settings 里的 Base URL 配置。
但发现无效。勾上 Force Base URL 之后依然不起作用,仓库不加上 /nexus 无法访问。
此处实际上修改的是 nexus 数据目录下的 conf/nexus.xml 配置文件。

尝试方法二:
参考 https://stackoverflow.com/a/29561898/2673757,但发现在 conf 文件夹下没有 nexus.properties,尝试创建此文件并写入上面答案的配置,然而依旧不起作用。

最终解决的方法:
在官方的 docker-nexus 开源项目(https://github.com/sonatype/docker-nexus )中,发现有这样一段话(https://github.com/sonatype/docker-nexus#notes):

Notably: /opt/sonatype/nexus/conf/nexus.properties is the properties file. Parameters (nexus-work and nexus-webapp-context-path) defined here are overridden in the JVM invocation.

其下有关于环境变量的说明:

  • Environment variables can be used to control the JVM arguments
  • CONTEXT_PATH, passed as -Dnexus-webapp-context-path. This is used to define the URL which Nexus is accessed. Defaults to ‘/nexus’

于是修改 docker 启动脚本,增加一个 CONTEXT_PATH 的环境变量,值为空字符串。

#!/bin/bash
sudo docker run -d \
--name nexus \
--restart always \
-p 8081:8081 \
-v /data-storage/nexus:/sonatype-work  \
-e CONTEXT_PATH="" \
sonatype/nexus

停止原来的容器并删除,重新启动新的 docker 容器,成功。

  • 0
    点赞
  • 0
    评论
  • 0
    收藏
  • 打赏
    打赏
  • 扫一扫,分享海报

参与评论 您还未登录,请先 登录 后发表或查看评论
©️2022 CSDN 皮肤主题:成长之路 设计师:Amelia_0503 返回首页

打赏作者

貌似掉线

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值