容器安装

如此如此, 这般这般…

反向代理

nginx等服务器, 反向代理到 127.0.0.1:1314 , 不能localhost:xxx可能报错.

nginx.conf
1
2
3
4
5
6
7
8
9
10
11
12
location ^~ / {
proxy_pass http://127.0.0.1:1314;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header REMOTE-HOST $remote_addr;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header X-Forwarded-Proto $scheme; # 请求协议保持一致
proxy_http_version 1.1;
add_header Cache-Control no-cache;
}

新建仓库

选项参考

在 Nexus Repository Manager 中创建 Maven2 Hosted 仓库时,以下是一些常见选项以及建议的填写内容:

  1. Repository ID: 这是仓库的唯一标识符,用于在 Nexus 中识别仓库。你可以为仓库选择一个简短的、有意义的标识符,比如 maven-releasesmaven-snapshots

  2. Name: 仓库的名称,用于描述仓库的用途。这是一个可读性较强的字段,可以根据需要填写,比如 “Maven Releases” 或 “Maven Snapshots”。

  3. Blob Store: 选择用于存储仓库内容的 Blob 存储。这通常是默认选项,除非你有特殊的存储需求,否则可以保持不变。

  4. Layout Policy: 这是 Maven 仓库的布局策略。通常,你可以选择默认的 Maven2 layout。这个选项确定了如何组织和存储仓库中的构件。

  5. Deployment Policy: 这是 Maven 仓库的部署策略。对于 Maven Releases 仓库,通常选择 “Allow redeploy”,允许覆盖已部署的构件。对于 Maven Snapshots 仓库,通常选择 “Disable redeploy”,以确保快照构件不被覆盖。

  6. Version Policy: 这是 Maven 仓库的版本策略。对于 Maven Releases 仓库,通常选择 “Release”,表示只允许发布正式版本。对于 Maven Snapshots 仓库,选择 “Snapshot”,表示只允许快照版本。

  7. Strict Content Type Validation: 这个选项用于启用或禁用内容类型的严格验证。通常,你可以保持默认值 “true”,以启用验证,确保仓库中的内容类型正确。

  8. Allow Redeploy for Different Content: 这个选项用于控制是否允许重新部署不同内容的构件。通常,你可以选择 “false”,以确保构件的内容不会被误覆盖。

  9. Version Policy: Mix Release and Snapshot Versions: 这个选项用于控制是否允许混合发布版本和快照版本的构件。根据你的需求,可以选择 “false” 或 “true”。

  10. HTTP Request Settings: 这些设置用于配置 HTTP 请求的参数。通常,你可以保持默认值,除非有特殊的要求。

  11. Storage: 这是用于配置仓库存储的高级选项。通常,你可以保持默认值,除非你有特殊的存储需求。

  12. Cleanup Policies: 这些选项用于配置仓库内容的清理策略。你可以根据需要配置清理策略,以删除不再需要的构件。

一旦填写了这些选项,你可以点击 “Create Repository”(创建仓库)按钮来创建 Maven2 Hosted 仓库。创建成功后,你可以将该仓库用作 Maven 构建的目标仓库,以发布和访问构件。确保根据你的需求创建适当的 Maven Releases 和 Maven Snapshots 仓库。

代理仓库

这步是代理阿里的公共仓库

公共仓库

这步是建立我们的公共仓库

  • 新建仓库, 选择 maven2 (host)
  • 填写Name, e.g. tc-maven-public
  • 选择Member repositories: 把刚才的tc-maven-central加到右边
  • 其它默认即可

版本仓库

这步才是建立我们的项目版本仓库, 以market项目的release版本为例

  • 新建仓库, 选择 maven2 (host)
  • 填写Name, e.g. tc-market-maven-releases
  • 其它先默认即可

已经完成了, 我们接下来尝试推送版本

项目配置

  • Maven配置, 我的在 S:\ThatCode\CodeService\Maven\conf\settings.xml
Maven配置文件
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<!--  连接上Nexus仓库  -->
<servers>
<server>
<id>tc-market-maven-release</id>
<username>账号</username>
<password>密码</password>
</server>
</servers>
<!-- 配置中央仓库, 取代原阿里镜像 -->
<mirrors>
<mirror>
<id>tc-maven-public</id>
<mirrorOf>*</mirrorOf>
<name>TC Maven</name>
<url>https://xxxxxx/repository/tc-maven-public/</url>
</mirror>
</mirrors>
  • 要推送的项目的POM
项目POM.XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<!--    开发环境发布使用版本名称    -->  
<!-- <version>1.0.0-SNAPSHOT</version>-->
<!-- 测试环境发布使用版本名称 -->
<!-- <version>1.0.0-ALPHA</version>-->
<!-- 预上线环境发布使用版本名称 -->
<!-- <version>1.0.0-BETA</version>-->
<!-- 正式发布使用版本名称 -->
<version>1.0.0-RELEASE</version>

<!-- ... -->


<distributionManagement>
<!-- Distribution Management Configuration -->
<repository>
<id>tc-maven-releases</id>
<name>Nexus Release Repository</name>
<url>https://xxxx/repository/maven-releases/</url>
</repository>
</distributionManagement>

推送吧 mvn deploy


本站由 钟意 使用 Stellar 1.28.1 主题创建。
又拍云 提供CDN加速/云存储服务
vercel 提供托管服务
湘ICP备2023019799号-1
总访问 次 | 本页访问