01. 项目环境搭建

1. 项目环境搭建

为了还原企业中的开发环境,神领物流项目提供了一套环境以供学习使用。

1.1. 开发环境说明


说明:

  • 加入开发团队后,首先需要从git仓库中拉取项目代码
  • 拉取到项目代码后,项目会通过Maven私服下载所需要的jar包
  • 开发工程师按照需求文档进行业务开发,在开发完成后将代码推送到git仓库
  • 代码推送到git后,git会通知Jenkins(自动化部署系统)
  • Jenkins接收到通知后,拉取到最新的代码,并且将服务部署到服务器

1.2. 虚拟机环境

1.2.1. 导入虚拟机

方案一:windows环境
VMware安装过程省略,建议版本使用15.5以上版本。
默认虚拟机设置的内存大小内8G,虚拟内存为16GB,建议保持此配置,不建议进行调整。

1.2.2. 配置VMware网络

因为虚拟机配置了静态IP地址为192.168.150.101,因此需要VMware软件的虚拟网卡采用与虚拟机相同的网段。

1.2.3. 配置VMware

首先,在VMware中选择编辑,虚拟网络编辑器:
image-20220608172555245.png
这里需要管理员权限,因此要点击更改设置:
image-20220608172651574.png
接下来,就可以修改虚拟网卡的IP地址了,流程如图:
image-20220608173341689.png
注意:一定要严格按照标号顺序修改,并且IP地址也要保持一致!

1.2.4. 验证

点击确定后,等待一段时间,VMware会重置你的虚拟网卡。完成后,可以在windows的网络控制面板看到:
image-20220608173701762.png
选中该网卡,右键点击,在菜单中选择状态,并在弹出的状态窗口中选择详细信息:
image-20220608173908027.png
在详细信息中,查看IPv4地址是否是 192.168.150.1:
image-20220608174026293.png
如果与我一致,则证明配置成功!

1.2.5. 导入

资料中提供了一个虚拟机文件:
image.png
打开VMware,选择文件,然后打开,找到之前提供的虚拟机文件夹,进入文件夹后,选中CentOS7-sl.ovf文件,然后点击打开:
image.png
导入成功:
image.png
启动虚拟机,选择【我已复制该虚拟机】:
image.png

1.2.6. 登入

虚拟机登入信息如下:

# 用户名
root
# 密码
123321

1.2.7. 测试网络

最后,通过命令测试网络是否畅通:

ping baidu.com

注意:只要按照文档导入虚拟机即可,其他软件无需自己安装,都已经安装了,并且开机自启。

image-20220728162541120.png

通过dps命令可以查询上述列表,dps是自定义命令。 自定义命令方法如下:

vim ~/.bashrc

#增加如下内容
alias dps='docker ps --format "table{{.ID}}\t{{.Names}}\t{{.Status}}\t{{.Ports}}"'
#保存退出

#生效
source ~/.bashrc

通过浏览器访问地址:http://192.168.150.101:10880/ ,如果能够看到如下界面,说明服务器启动成功。
image.png

项目中的git服务采用gogs系统,之所以选择gogs系统,是因为运行gogs系统所需要系统资源较小,功能相对完整。

2.2.2、服务列表

在虚拟机中提供了一些基础服务,具体如下:

名称地址用户名/密码端口
githttp://git.sl-express.com/sl/sl12310880
mavenhttp://maven.sl-express.com/nexus/admin/admin1238081
jenkinshttp://jenkins.sl-express.com/root/1238090
权限管家http://auth.sl-express.com/api/authority/static/index.htmladmin/1234568764
RabbitMQhttp://rabbitmq.sl-express.com/sl/sl32115672
MySQL-root/1233306
nacoshttp://nacos.sl-express.com/nacos/nacos/nacos8848
neo4jhttp://neo4j.sl-express.com/browser/neo4j/neo4j1237474
xxl-jobhttp://xxl-job.sl-express.com/xxl-job-adminadmin/12345628080
EagleMaphttp://eaglemap.sl-express.com/eagle/eagle8484
seatahttp://seata.sl-express.com/seata/seata7091
Gatewayhttp://api.sl-express.com/-9527
adminhttp://admin.sl-express.com/-80
skywalkinghttp://skywalking.sl-express.com/-48080
Redis-1233216379
MongoDB-sl/12332127017

可以看到,每个服务都有对应的域名地址访问,需要在本机配置hosts映射才能访问。

2.2.3、配置本机hosts

修改本机的hosts文件:
image.png
一般不建议直接对该文件修改,推荐使用 uTools 工具中的hosts插件修改:(uTools安装包在资料中有提供)
image.png
image.png
内如如下:

192.168.150.101 git.sl-express.com
192.168.150.101 maven.sl-express.com
192.168.150.101 jenkins.sl-express.com
192.168.150.101 auth.sl-express.com
192.168.150.101 rabbitmq.sl-express.com
192.168.150.101 nacos.sl-express.com
192.168.150.101 neo4j.sl-express.com
192.168.150.101 xxl-job.sl-express.com
192.168.150.101 eaglemap.sl-express.com
192.168.150.101 seata.sl-express.com
192.168.150.101 skywalking.sl-express.com
192.168.150.101 api.sl-express.com
192.168.150.101 admin.sl-express.com

打开浏览器测试:http://git.sl-express.com/
image-20220728164743695.png
看到这个页面就说明hosts已经生效。

2.2.4、环境说明

通过上面的测试,可以通过域名访问各种服务了,访问过程是怎么样的呢?其实,在101机器中安装了nginx,通过反向代理功能访问到各种对应的服务。如下:

说明:

  • 通过浏览器按照域名的访问访问,如:http://git.sl-express.com/ ,先通过本地系统的hosts文件找到映射的ip地址
  • 此时,就会访问到虚拟机环境,由于请求没有加端口号,默认访问80端口
  • 由于在101机器部署安装nginx服务并且占用的是80端口,请求就会进入nginx
  • nginx会根据不同的域名将请求转发到不同的服务,例如:git.sl-express.com -> 127.0.0.1:18080
    通过vim /usr/local/src/nginx/conf/nginx.conf命令查看nginx的配置文件:
    image.png

2.2.5、配置Maven私服

在101机器中提供了maven私服,需要本地配置maven(建议版本为3.6.x)才能使用私服,配置文件参考如下:

<?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">

    <!-- 本地仓库  这里要改成你自己的本地仓库位置 -->
    <localRepository>F:\maven\repository</localRepository>

    <!-- 配置私服中deploy的账号 -->
    <servers>
        <server>
            <id>sl-releases</id>
            <username>deployment</username>
            <password>deployment123</password>
        </server>
        <server>
            <id>sl-snapshots</id>
            <username>deployment</username>
            <password>deployment123</password>
        </server>
    </servers>

    <!-- 使用阿里云maven镜像,排除私服资源库 -->
    <mirrors>
        <mirror>
            <id>mirror</id>
            <mirrorOf>central,jcenter,!sl-releases,!sl-snapshots</mirrorOf>
            <name>mirror</name>
            <url>https://maven.aliyun.com/nexus/content/groups/public</url>
        </mirror>
    </mirrors>

    <profiles>
        <profile>
            <id>sl</id>
            <!-- 配置项目deploy的地址 -->
            <properties>
                <altReleaseDeploymentRepository>
                    sl-releases::default::http://maven.sl-express.com/nexus/content/repositories/releases/
                </altReleaseDeploymentRepository>
                <altSnapshotDeploymentRepository>
                    sl-snapshots::default::http://maven.sl-express.com/nexus/content/repositories/snapshots/
                </altSnapshotDeploymentRepository>
            </properties>
            <!-- 配置项目下载依赖的私服地址 -->
            <repositories>
                <repository>
                    <id>sl-releases</id>
                    <url>http://maven.sl-express.com/nexus/content/repositories/releases/</url>
                    <releases>
                        <enabled>true</enabled>
                    </releases>
                    <snapshots>
                        <enabled>false</enabled>
                    </snapshots>
                </repository>
                <repository>
                    <id>sl-snapshots</id>
                    <url>http://maven.sl-express.com/nexus/content/repositories/snapshots/</url>
                    <releases>
                        <enabled>false</enabled>
                    </releases>
                    <snapshots>
                        <enabled>true</enabled>
                    </snapshots>
                </repository>
            </repositories>
        </profile>
    </profiles>

    <activeProfiles>
         <!-- 激活配置 -->
        <activeProfile>sl</activeProfile>
    </activeProfiles>

</settings>
  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值