搭建抢购网环境(给自己加强记忆的)
大佬们,有没有懂的给科普下,自己需要搭建这些东西吗?感觉网课老师给我讲的有点懵逼,有懂的可以给科普下。对了,有需要材料的麻烦留言一哈,里面的配置我都是下好了的。~。~
---------------------------------------------------------------------------------------------------------------------------------------------------------------------懵逼的分割线----------------------------------------------------------------------------------------------
本文基于课工场项目的抢购网环境搭建,纯粹给自己加强记忆用的,请勿观看~。~,发表一下感想,大佬的博客果然流批,打字打的手好酸,而且做出来的没有大佬好看,而且内容也没有大佬们的完善。哭~我好蔡阿
--------------------------------------------------------------------------------------------------------------------------狂乱的手动分割线-------------------------------------------------------------------------------------------------------------------------------------------------
抢购网项目纵向分为4部分,商品,用户,订单,支付;横向拆成了生产者和消费者的形态,即consumer和provider并分别放入了单独的docker容器中。
基础服务:Nginx搭建反向代理和负载均衡所用
MySQL数据库存储信息
ActiveMQ用来处理消息队列
Jenkins是一个开源的持续集成工具(说句老实话,我tm也不知道这个是啥玩意),做CICD时候会用到
Nexus是一个私服仓库
ActiveMQ是消息队列(转载个大佬的:https://www.cnblogs.com/javalyy/p/8856731.html 这篇博客讲了好多)
zookeeper和dubbox是微服务架构
需要安装原生的乌班图(下载地址:https://www.ubuntu.com/download/desktop)
课件下发的素材是dockerfiles-master
---------------------------------------------------------------------------------------------------------------------------------------华丽的分割线--------------------------------------------------------------------------------------------------------------------------
第一步:下载基础镜像
素材中有两个文件夹:evn 和src文件夹
src文件夹是用来创建镜像的原始文件,可以对应创建镜像,抢购网中有一些是用不到的
confluence是一个文档管理软件
eureka是一个服务注册中心,本次用到的是zookeeper
jdk1.8是本次用到的java工具包
JIRA是项目管理的时候常用的
两个kong 第一个是开源网关,是API的管理工具 kong.a是一个图形管理界面
mycat中间件是用来做主表从表分离的工具
nodejs是服务器端的中间件
postgresql 是一个开源数据库,本次用到的是MySQL
redis 是服务器缓存
zookeeper是注册中心
-------------------------------------------------------------------------------------------------------------------------------------------潇洒的分割线----------------------------------------------------------------------------------------------------------------------
env文件夹
im.sh脚本用于初始化创建dokerfile
2.sh是用来初始化容器的,Ngix生产中的端口是80,开发环境中需要调整端口号,方便重启容器吧查询的数据库映射出来
jar包内放置的是各种模块
jar包的三个脚本
第一个是用来创建容器
第二个是用来创建消费者服务的,用于把jar包拷贝到容器中并进行启动
--------------------------------------------------------------------------------------------------------------------------------------不知道是啥的分割线--------------------------------------------------------------------------------------------
下一步就是上传材料咯
用xftp就可以了,安装乌班图的话需要给乌班图一个固定的ip地址,网上应该有教程
正常查到这些就ok了,如果有关键的镜像没有的话需要去im-1.sh中找一下该镜像的语句
并上网验证地址是否正确,大部分问题是由于镜像文件下载速度过慢导致的,那就不去用官方仓库,用阿里云的
对了,jdk不要用pull的方式去拉,创建的时候容易出现问题,建议.gz包
配置mysql直接在shipyard上做找到mysql位置并点击右侧的放大镜
再点击console再点击run就可以打开MySQL控制台
此时配置完密码就在windows下测试能连上数据库吗,连不上的原因是MySQL没有启动远程连接
输入这些命令就ok了
然后开始配置redis
具体视频中已经配置完了
端口号和密码已经配置在了资源文件的redis.config文件中,在dockerfile镜像配置中已经把redis.config的位置已经放好了,如果有需要就再重新修改这两个文件就可以了
容器安装完成后修改配置的话太麻烦了,可以直接用shipyard右侧的小扳手可以直接建立镜像文件
然后就可以见到镜像创建成功
注意:如果取相同名字的镜像文件的话,系统会保留最新的那个,然后删除掉之前的几个,如上图所示
可以在设置名称的时候把时间加上,方便查找版本
nginx里面server配置了所有的服务
在添加了访问之后,还需要在host地址里面去添加相关的映射
添加下图的地址,其中的ip地址是你自己配置的IP地址
在配置的登陆环境中登陆dubbox,登陆成功了
dubbo的用户名密码在配置文件中可以修改
如果mq有错误一般是两个原因,代理没配好或者服务没启动
首先检查nginx的代理配置,然后查看mq是否启动
在mq的bin目录下
运行./activemq start
再查看mq是否能登陆成功
到此基础层搭建完毕