Day05-03-Nexus倉庫
- 05-nexus-倉庫
- 1. 概述
- 2. 極速部署指南
- 2.1 下載
- 2.2 部署
- 2.3 配置
- 2.4 連接使用nexus
- 2.4 編譯與測試
- 3. 總結
05-nexus-倉庫
1. 概述
-
背景:
- maven編譯的時候,npm/cnpm編譯,需要下載大量的依賴包。
- 這些依賴包在每一次構建的時候都需要使用。
- 每次都從公網(maven 阿里云) npm(國內)。
-
可以搭建內部軟件倉庫:存放著依賴包
-
這個軟件依賴倉庫可以通過nexus實現
2. 極速部署指南
- 下載
- 部署
- 配置
- 啟動
- 配置代碼項目的內容pom.xml
2.1 下載
https://www.sonatype.com/download-oss-sonatype
2.2 部署
tar xf nexus-3.13.0-01-unix.tar.gz -C /app/tools/
ln -s /app/tools/nexus-3.13.0-01/ /app/tools/nexus
ll /app/tools/nexus/bin/
ln -s /app/tools/nexus/bin/nexus /sbin/安裝jdk
安裝rpm包版本的jdk.
rpm -ivh jdk-8u331-linux-x64.rpm[root@oldboy-devops-nexus ~]# nexus start
Starting nexus
[root@oldboy-devops-nexus ~]# nexus status
nexus is running.
啟動的警告: 不推薦使用root運行。
[root@devops-nexus ~]# nexus --version WARNING: ************************************************************ WARNING: Detected execution as "root" user. This is NOT recommended! WARNING: ************************************************************
2.3 配置
- hosts 解析 10.0.0.74 nexus.oldboylinux.cn
- 用戶名:admin 密碼:admin123
登錄后屏幕提示:
System Requirement: max file descriptors [4096] likely too low, increase to at least [65536].
翻譯nexus要求: 文件描述符過低,請增加到65536(每個進程可以打開的文件數量)配置后重啟生效。 vim /etc/security/limits.conf新增* soft nofile 65536* hard nofile 65536 命令臨時重啟后失效 ulimit -n 65536
- 私服使用全流程
- 配置連接阿里云maven源
- 修改proxy部分地址為阿里云地址 http://maven.aliyun.com/nexus/content/groups/public/
2.4 連接使用nexus
- maven conf/settings.xml
- java項目下面 pom.xml
連接nexus方式 | 說明 | 方法 |
---|---|---|
方式01-全局 | 所有java項目都連接nexus倉庫 | maven conf/settings.xml |
方式02-某個項目 | 某個項目連接nexus倉庫 | java項目下面 pom.xml |
cp /app/tools/maven/conf/settings.xml{,.ori}
cp settings-by-lidao996.xml /app/tools/maven/conf/settings.xml
<?xml version="1.0" encoding="UTF-8"?>
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd"><pluginGroups></pluginGroups><proxies></proxies><servers><server><id>my-nexus-releases</id><username>admin</username><password>admin123</password></server><server><id>my-nexus-snapshot</id><username>admin</username><password>admin123</password></server></servers><mirrors><mirror><id>nexus</id><mirrorOf>*</mirrorOf><url>http://nexus.oldboylinux.cn:8081/repository/maven-public/</url></mirror></mirrors><profiles><profile><id>nexus</id><repositories><repository><id>central</id><url>http://nexus.oldboylinux.cn:8081/repository/maven-public/</url><releases><enabled>true</enabled></releases><snapshots><enabled>true</enabled></snapshots></repository></repositories><pluginRepositories><pluginRepository><id>central</id><url>http://nexus.oldboylinux.cn:8081/repository/maven-public/</url><releases><enabled>true</enabled></releases><snapshots><enabled>true</enabled></snapshots></pluginRepository></pluginRepositories></profile></profiles>
<activeProfiles>
<activeProfile>nexus</activeProfile>
</activeProfiles>
</settings>
2.4 編譯與測試
http://nexus.oldboylinux.cn:8081/repository/maven-central/
3. 總結
- 倉庫/私服。
- maven(java)
- npm倉庫