1.环境
docker运行环境
2.创建nexus挂载目录
因为使用docker 容器化运行nexus,需要一个固定目录,用来挂载nexus存放的数据,这样容器的启动,停止,删除不会影响数据
mkdir /opt/nexus-work && chown -R 200 /opt/nexus-work
3.安装nexus
docker运行
docker run -d -p 9000:8081 -v /opt/nexus-work:/sonatype-work --name nexus sonatype/nexus:oss
9000端口可根据你的需要设置
4.nginx代理配置(非必须)
有域名的时候可以使用nginx代理,不需要的话可以跳过此步骤
(1.)安装nginx
docker 运行nginx时候需要设置挂载目录
我这里直接在linux系统中安装nginx,安装过程另见“Docker系列:安装nginx”
(2.)配置域名
用的是阿里云域名 域名/解析
(3)配置nexus代理
一般nginx位置在/etc/nginx/目录下 nginx.conf 里面添加
server {
listen 80;
server_name www.xbmn.top;
include /etc/nginx/default.d/*.conf;
location / {
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_pass http://localhost:9000;
}
}
(4)配置成功后,直接域名访问 http://www.xbmn.top/nexus
如果配置了nginx,那就换一下域名,如果没有配置nginx,那就http://你得ip:端口/nexus,即可
默认用户名和密码是admin admin123,登录后可修改密码
4.创建maven仓库
新建仓库
将新建的仓库添加到pulic group里面
5.上传jar到maven仓库
gradle环境
(1)修改build.gradle文件
apply plugin: 'maven'
apply plugin: 'maven-publish'
//可运行包的分类器(打包成功后的会以项目名-boot为包名)
bootJar.classifier = 'boot'
jar.enabled = true
[compileJava, compileTestJava, javadoc]*.options*.encoding = 'UTF-8'
task sourcesJar(type: Jar, dependsOn: classes) {
classifier = "sources"
from sourceSets.main.allSource
}
artifacts {
archives jar
archives sourcesJar
}
uploadArchives {
configuration = configurations.archives
repositories.mavenDeployer {
repository(url: "http://www.xbmn.top/nexus/content/repositories/zoe-maven/") {
authentication(userName: "admin",password: "你的密码")
}
pom.project {
name archivesBaseName
url "http://www.xbmn.top/nexus/content/repositories/zoe-maven/"
description 'zoesoft Development CommonUtils'
groupId "public"
artifactId archivesBaseName
version version
packaging "jar"
}
}
}
(2)添加一个工具类,并打包成jar上传
(3)上传成功后,在nexus maven仓库中就可以看到新的jar
6.使用jar
gradle环境
maven{ url "http://www.xbmn.top/nexus/content/repositories/zoe-maven/"}