人人框架微服务版开发环境和安装部署
renren微服务框架需要jdk 17 请注意版本选择
安装mysql数据库
先安mysql装数据库,并创建两个database,一个用于nacos,一个用于项目,初始化nacos数据结构和数据。
nacos-server-2.2.3 数据库初始化脚本
https://nacos.io/zh-cn/docs/what-is-nacos.html
安装部署nacos
官方网址:https://nacos.io/zh-cn/docs/what-is-nacos.html
github地址:https://github.com/alibaba/nacos
github数据库初始化脚本:https://github.com/alibaba/nacos/blob/master/distribution/conf/mysql-schema.sql
# 镜像
# 根据需要,开放8848和9848端口
nacos/nacos-server:v2.2.3
# 设置环境变量
# 系统(集群)启动方式 ,cluster:集群,standalone:单机
MODE: standalone
# 数据库名称
MYSQL_SERVICE_DB_NAME = renren_cloud_nacos
# 数据地址
MYSQL_SERVICE_HOST = 192.168.0.10
# 数据库密码
MYSQL_SERVICE_PASSWORD = <your password>
# 数据库端口
MYSQL_SERVICE_PORT: 33306
# 数据用用户名
MYSQL_SERVICE_USER: root
# 主机模式,ip:ip地址,host:主机名
PREFER_HOST_MODE: ip
# 数据库类型
SPRING_DATASOURCE_PLATFORM: mysql
安装部署redis
version: "3"
services:
redis:
image: redis:6.2.6
restart: always # 自动重启
ports:
- 56301:6379
command: redis-server --appendonly yes --requirepass <your password>
编写Dockerfile
- java项目,包括:renren-admin-server,renren-gateway
FROM openjdk:17
EXPOSE 8080
# VOLUME /tmp
ADD target/renren-admin-server.jar /app.jar
CMD ["java","-jar","/app.jar"]
-
VUE前端项目,包括web-admin
-
nginx.conf
server {
listen 80;
#listen 443 ssl;
server_name localhost;
#charset koi8-r;
#access_log /var/log/nginx/log/host.access.log main;
#ssl_certificate /home/ssl/server.crt;
#ssl_certificate_key /home/ssl/server.key;
root /usr/share/nginx/html;
index index.html;
location / {
# 不缓存首页,解决VUE单页面发版后不生效
add_header Cache-Control "no-cache no-store must-revalidate proxy-revalidate,max-age=0";
add_header Last-Modified $date_gmt;
# 这个有顺序,需要加在后面
etag off;
}
}
- Dockerfile
FROM nginx:latest
EXPOSE 80
COPY ./dist /usr/share/nginx/html
COPY ./nginx/default.conf /etc/nginx/conf.d/default.conf
-
解决浏览器版本缓存不刷新
-
编写push.sh文件
#!/bin/bash
# 登录
docker login -u <your name> -p <your password> swr.cn-south-1.myhuaweicloud.com
# 打包
docker build -t swr.cn-south-1.myhuaweicloud.com/vp-park/park-baseline/<your image name>:v1.0 ./
# 推送
docker push swr.cn-south-1.myhuaweicloud.com/vp-park/park-baseline//<your image name>:v1.0
编写统一配置文件
在k8s新建ConfigMap,然后再java服务中引用配置:增加环境变量,选ConfigMap,选择需要的configMap名称
# 服务地址
nacos_host = nacos-server
# 名字空间
nacos_namespace = public
# 端口
nacos_port = 8848
进一操作请参考rancher使用手册
上传nacos配置文件
打开nacos管理界⾯(http://localhost:8848/nacos) ,初始⽤户名nacos,密码nacos,登录之后,如下所示:
导⼊nacos配置⽂件,配置⽂件在项⽬⾥,⽂件名为:【~/doc/nacos/nacos_config.zip】,如下所示:
在nacos⾥,还需要修改datasource.yaml,如:redis、MySQL信息,如下所示: