微服务电商项目--使用docker搭建maven私服
本篇博客使用docker进行安装maven私服,并将自己的代码打包上传至私服中。
说明:本人书写该篇博客原因主要有两个:一、方便本人查阅,二、为全小白且想学微服务的朋友进行查阅。以下内容主要来源于余胜军视频,本人在他基础上将步骤进行细化,使小白也能看懂,请大家在转载的时候也引入余胜军的链接
1、 安装docker
1.1查看是否安装docker:
进入linux服务器:输入以下命令,若没有显示对应端口则安装
yum list installed | grep docker
1.2安装docker
yum -y install docker
安装完成后查看运行查看docker命令
2. 启动docker
systemctl start docker
2.1. 查看docker状态
systemctl status docker
3. 下载nexus3的镜像
3.1. 安装nexus3
docker pull sonatype/nexus3
若出现以下报错则重启一下docker
service docker restart
- 将容器内部/var/nexus-data挂载到主机/root/nexus-data目录。
docker run -d -p 8081:8081 --name nexus -v /root/nexus-data:/var/nexus-data --restart=always sonatype/nexus3
查看容器信息
docker ps
3.1. Docker相关命令
Docker inspect 容器id 查看容器信息
Docker stop 容器id 停止容器id
Docker rm 容器id 删除容器id
Maven私服启动容器稍微比较慢,等待1分钟即可
关闭防火墙,访问http://ip:8081
4. 登录maven私服
4.1查看默认密码
输入以下命令查找该文件的位置
find / -name 'admin.password'
进入data文件夹下
cd /var/lib/docker/volumes/fc3e155d5834df70ecad085aabc361628916670997aee210e03215f3afef475e/_data/
查看密码:
4.2登录maven私服,进入后更改密码为:admin123
5.创建自己的repostitories
登录进入首页后,步骤如下:
6、查看maven环境配置地址
在本地进入控制台输入mvn -version
进入该文件夹下找到setting.xm文件,增加以下代码:
<server> <!-- 自定义一个serverid 名称--> <id>cyb</id> <!--maven私服登录的用户名 --> <username>cyb</username> <!--配置的maven私服登录密码--> <password>cyb</password> </server>
在需要导入maven私服的项目中,进入pom文件,增加以下代码
<!--注意限定版本一定为RELEASE,因为上传的对应仓库的存储类型为RELEASE --> <!--指定仓库地址 --> <distributionManagement> <repository> <!--此名称要和.m2/settings.xml中设置的ID一致 --> <id>cyb</id> <url>http://192.168.1.172:8081/repository/one-release/</url> </repository> </distributionManagement> <build> <plugins> <!--发布代码Jar插件 --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-deploy-plugin</artifactId> <version>2.7</version> </plugin> <!--发布源码插件 --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-source-plugin</artifactId> <version>2.2.1</version> <executions> <execution> <phase>package</phase> <goals> <goal>jar</goal> </goals> </execution> </executions> </plugin> </plugins> </build>
/
7导入maven私服
输入命令:mvn deploy 将该jar包导入到maven私服中
解决办法:
或者将SNAPSHOT替换成RELEASE
说明已上传成功
其他项目上传也类似,子父项目先上传被依赖的项目,再上传依赖的项目。喜欢本人博客的朋友可以关注我博客,本人博客地址为:https://www.cnblogs.com/chenyuanbo/