docker 安装 maven 私有库 nexus3

摘要:
1.使用docker compose构建1,创建目录,并创建配置文件。您可以选择创建cd/rootmkidrenexuescdnexusvidocker compose。yml2在任何具有读/写权限的目录中。Docker编写。yml配置文件版本:“3.1”服务:nexus:restart:alwayimage:sonatype/nexus3container_n

1,使用 docker-compose 构建

1,创建一个目录,并创建配置文件,可以选择在自己有读写权限的任意目录下创建

cd /root
mkidr nexues
cd nexus
vi docker-compose.yml

2,docker-compose.yml 配置文件

version: '3.1'
services:
  nexus:
    restart: always
    image: sonatype/nexus3
    container_name: nexus
    ports:
      - 8081:8081
    volumes:
      - /usr/local/docker/nexus/data:/nexus-data

3,启动

docker-compose up -d   // 后台启动命令
docker logs -f nexus   // 监听容器日志

4,如果出现权限不足的情况,说明是数据卷的权限不够,我们需要将数据卷的权限设置为 777

chmod 777 /root/nexus/data

5,启动成功后,可以在浏览器中输入 http://ip:8081 访问窗口后台管理界面,出现如下画面为安装成功

docker 安装 maven 私有库 nexus3第1张

2,登入

1,默认账号为:admin

2,获取自动生成的密码(第一次登入后会让你修改密码)

cd /root/neuxs/data
cat admin.password 

3,该镜像 需要的 cpu 和 内存较大,请选择性能较好的主机配置

4,在项目中使用

1,maven 配置文件的配置 setting.xml 加入两个 server

<server>
  <id>nexus-releases</id>
  <username>admin</username>
  <password>你的密码</password>
</server>
<server>
  <id>nexus-snapshots</id>
  <username>admin</username>
  <password>你的密码</password>
</server>
  1. nexus-releases: 用于发布 Release 版本
  2. nexus-snapshots: 用于发布 Snapshot 版本(快照版)
  3. 在项目 pom.xml 中设置的版本号添加 SNAPSHOT 标识的都会发布为 SNAPSHOT 版本,没有 SNAPSHOT 标识的都会发布为 RELEASE 版本
  4. SNAPSHOT 版本会自动加一个时间作为标识,如:1.0.0-SNAPSHOT 发布后为变成 1.0.0-SNAPSHOT-20180522.123456-1.jar

2,配置项目上传 jar 包 pom.xml 配置

<distributionManagement>  
  <repository>  
    <id>nexus-releases</id>  
    <name>Nexus Release Repository</name>  
    <url>http://192.168.200.100:8081/repository/maven-releases/</url>  
  </repository>  
  <snapshotRepository>  
    <id>nexus-snapshots</id>  
    <name>Nexus Snapshot Repository</name>  
    <url>http://192.168.200.100:8081/repository/maven-snapshots/</url>  
  </snapshotRepository>  
</distributionManagement> 
  1. ID 名称必须要与 settings.xml 中 Servers 配置的 ID 名称保持一致
  2. ip 地址是你安装的主机的 IP

3,上传到私服的 maven 命令

mvn deploy

4, 直接上传 jar 包的 maven 命令

mvn deploy:deploy-file          ^
  -DgroupId=坐标                ^
  -DartifactId=坐标             ^ 
  -Dversion=版本                ^
  -Dpackaging=jar               ^
  -Dfile=jar本地的物理地址       ^ 
  -Durl=http://192.168.200.100:8081/repository/maven-3rd/  ^ 
  -DrepositoryId=nexus-releases ^

3,拉取私有仓库的地址 pom.xml

<repositories>
    <repository>
        <id>nexus</id>
        <name>Nexus Repository</name>
        <url>http://192.168.200.100:8081/repository/maven-public/</url>
        <snapshots>
            <enabled>true</enabled>
        </snapshots>
        <releases>
            <enabled>true</enabled>
        </releases>
    </repository>
</repositories>
<pluginRepositories>
    <pluginRepository>
        <id>nexus</id>
        <name>Nexus Plugin Repository</name>
        <url>http://192.168.200.100:8081/repository/maven-public/</url>
        <snapshots>
            <enabled>true</enabled>
        </snapshots>
        <releases>
            <enabled>true</enabled>
        </releases>
    </pluginRepository>
</pluginRepositories>

免责声明:文章转载自《docker 安装 maven 私有库 nexus3》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇stegsolve使用方法SSIS 学习(4):变量和表达式【转】下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Maven 私有库和本地库的安装与配置 Sonatype Nexus + Maven

环境:CentOS 7.0 Final、JDK8、Sonatype Nexus、Maven 虚拟机模拟IP:192.168.16.167 备注:root权限用户操作 前提:已安装 JDK8 并配置好了环境变量 1、下载最新版 Nexus,下载地址: http://www.sonatype.org/nexus/go/ # wget https://sonat...

Kubernetes进阶实战读书笔记:配置容器应用(容器化应用配置方式)

一、容器化应用配置方式 每个应用程序都是一个可执行程序文件、它包含操作码列表、CPU通过执行这些操作码来完成特定的操作、例如,cat命令是由:/usr/bin/cat文件提供的、该文件含有机器指令的列表、在屏幕上显示制定文件的内容时需要使用这些机器指令、几乎每个程序的行为都可以通过其命令选项及参数或配置文件来按需定制、实践中、人们通常不会以默认的配置参数运...

manjaro安装docker,配置镜像拉取加速器

1、安装docker:sudo pacman -S docker2、启动docker服务:sudo systemctl start docker 3、设置docker开机启动服务:sudo systemctl enable docker4、用daocloud的镜像加速服务配置加速器:修改配置文件 sudo vim /etc/docker/daemon.j...

docker中mysql安装,并使用宿主机ip远程登录

 docker 安装  1、拉取镜像 docker pull mysql:5.7 2、运行容器  docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root -d mysql:5.7 docker exec -it mysql /bin/bash find / -name "*mys...

个人亲历运维面试

Docker 1. docker通过哪些方式实现资源隔离的 Docker 主要通过六大 Namespace 来实现资源的隔离 Mount Namespace,挂载命名空间,用来隔离挂载目录,让不同 Namespace 拥有独立的挂载结构,而程序中对挂载信息的修改不会影响到其他 Namespace 中程序的运行。 UTS Namespace,UTS Nam...

docker运行mysql容器自动停止的问题解救方案如下

在docker中启动的mysql容器会自动停止是因为mysql使用的内存过多; 解决方法如下: 1、先卸载之前的mysql容器,如下: docker ps -a #获取docker中的所有容器   通过docker rm cbb412415aab进行卸载删除 2、重新运行mysql容器: docker run -it -m 300M --memo...