angularjs网站开发实例,下载百度app最新版并安装,惠州 网站建设公司,经典网页设计欣赏1. 部署微服务集群
实现思路#xff1a;
① 查看课前资料提供的cloud-demo文件夹#xff0c;里面已经编写好了docker-compose文件
② 修改自己的cloud-demo项目#xff0c;将数据库、nacos地址都命名为docker-compose中的服务名
③ 使用maven打包工具#xff0c;将项目…
1. 部署微服务集群
实现思路
① 查看课前资料提供的cloud-demo文件夹里面已经编写好了docker-compose文件
② 修改自己的cloud-demo项目将数据库、nacos地址都命名为docker-compose中的服务名
③ 使用maven打包工具将项目中的每个微服务都打包为app.jar
④ 将打包好的app.jar拷贝到cloud-demo中的每一个对应的子目录中
⑤ 将cloud-demo上传至虚拟机利用 docker-compose up -d 来部署 1.2. compose文件
查看课前资料提供的cloud-demo文件夹里面已经编写好了docker-compose文件而且每个微服务都准备了一个独立的目录
内容如下
version: 3.2services:nacos:image: nacos/nacos-serverenvironment:MODE: standaloneports:- 8848:8848mysql:image: mysql:5.7.25environment:MYSQL_ROOT_PASSWORD: 123volumes:- $PWD/mysql/data:/var/lib/mysql- $PWD/mysql/conf:/etc/mysql/conf.d/userservice:build: ./user-serviceorderservice:build: ./order-servicegateway:build: ./gatewayports:- 10010:10010
可以看到其中包含5个service服务 nacos作为注册中心和配置中心 image: nacos/nacos-server 基于nacos/nacos-server镜像构建 environment环境变量 MODE: standalone单点模式启动 ports端口映射这里暴露了8848端口 mysql数据库 image: mysql:5.7.25镜像版本是mysql:5.7.25 environment环境变量 MYSQL_ROOT_PASSWORD: 123设置数据库root账户的密码为123 volumes数据卷挂载这里挂载了mysql的data、conf目录其中有我提前准备好的数据 userservice、orderservice、gateway都是基于Dockerfile临时构建的 查看mysql目录可以看到其中已经准备好了cloud_order、cloud_user表 查看微服务目录可以看到都包含Dockerfile文件 内容如下
FROM java:8-alpine
COPY ./app.jar /tmp/app.jar
ENTRYPOINT java -jar /tmp/app.jar
1.3. 修改微服务配置
因为微服务将来要部署为docker容器而容器之间互联不是通过IP地址而是通过容器名。这里我们将order-service、user-service、gateway服务的mysql、nacos地址都修改为基于容器名的访问。
如下所示
spring:datasource:url: jdbc:mysql://mysql:3306/cloud_order?useSSLfalseusername: rootpassword: 123driver-class-name: com.mysql.jdbc.Driverapplication:name: orderservicecloud:nacos:server-addr: nacos:8848 # nacos服务地址
将gateway, orderservice, userservice微服务的配置信息中的localhost都改掉比如数据库配置中的localhost改成mysql nacos服务地址中的localhost改成 nacos并且将nacos服务端口要写对
1.4.打包
接下来需要将我们的每个微服务都打包。因为之前查看到Dockerfile中的jar包名称都是app.jar因此我们的每个微服务都需要用这个名称。
可以通过修改pom.xml中的打包名称来实现每个微服务都需要修改
build!-- 服务打包的最终名称 --finalNameapp/finalNamepluginsplugingroupIdorg.springframework.boot/groupIdartifactIdspring-boot-maven-plugin/artifactId/plugin/plugins
/build
打包后 1.5. 拷贝jar包到部署目录
编译打包好的app.jar文件需要放到Dockerfile的同级目录中。注意每个微服务的app.jar放到与服务名称对应的目录别搞错了。
user-service order-service gateway 1.6. 部署
最后我们需要将文件整个cloud-demo文件夹上传到虚拟机中理由DockerCompose部署。
上传到任意目录
比如我们上传到tmp目录下 部署
进入cloud-demo目录
cd /tmp/cloud-demo/
先部署nacos防止nacos部署较慢其他微服务比nacos先部署出现报错。
docker-compose up -d nacos
然后运行下面的命令部署其他东西
docker-compose up -d
可以用命令查看部署情况
docker-compose logs -f
想单独看某个项目的部署,比如gateway的
docker-compose logs -f gateway
部署之后可以在本地端浏览器查看nacos服务列表
浏览器地址输入http://192.168.71.132:8848/nacos 其中前面的ip可以在虚拟机中使用命令
ip addr
进行查看 我们进入Nacos的控制台可以看到 则部署成功
测试一下接口是否可以访问浏览器输入
ll192.168.71.132:10010/order/101/?authorizationadmin 成功