人人框架微服务版开发环境和安装部署
renren微服务框架需要jdk 17 请注意版本选择
安装数据库
先安装数据库,并创建两个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>
编写dockerfileDockerfile
- 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前
-
VUE前端项目,包括web-admin
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
-
解决浏览器版本缓存不刷新
编写统一配置文件
在k8s新建ConfigMap,然后再java服务中引用配置:增加环境变量,选ConfigMap,选择需要的configMap名称
# 服务地址
nacos_host = nacos-server
# 名字空间
nacos_namespace = public
# 端口
nacos_port = 8848