ixrjog / opscloud4

云上运维
Apache License 2.0
1.32k stars 509 forks source link

部署时发现redis地址写死这个能配置吗,而且也发现注册失败,编译部署和下载jar试过都报错 #59

Closed AdminLei closed 2 years ago

AdminLei commented 2 years ago

1647943782(1)

ixrjog commented 2 years ago

image 配置文件中可以修改

AdminLei commented 2 years ago

我这边下载的代码没有dev这个yml只有prod的,并且已经改了,但是打包后启动还是会报错 image

ixrjog commented 2 years ago
# 项目支持多环境配置文件,通过-P ${env}  参数指定配置 application-${env}.yml
# e.g.  指定配置文件 application-prod.yml
$ mvn -Dmaven.test.skip=true clean package -P prod -U -am
AdminLei commented 2 years ago

我打包也是直接打包prod,并且打包后的classes里面的配置文件也是prod,但是启动还是报错云服务器的redis image

ixrjog commented 2 years ago

配置文件和日志截图给我看下

AdminLei commented 2 years ago

配置文件 image image

AdminLei commented 2 years ago

方便加个联系方式吗,我qq791424397

ixrjog commented 2 years ago

密码明文不能使用ENC()包裹,直接写; ENC()表示使用密钥加密后的密文

AdminLei commented 2 years ago

但是ip没有读取对

ixrjog commented 2 years ago

本地启动需要修改默认环境为当前使用的配置文件环境 prod image

AdminLei commented 2 years ago

谢谢 我改了在试试

AdminLei commented 2 years ago

你好我这边启动成功8080端口也已经开放但是还是浏览器访问不了,是有什么contextpath吗 image image

ixrjog commented 2 years ago

这个项目是前后端分离的,只测试后端可以打开API文档地址 http://127.0.0.1:8080/doc.html#/home

AdminLei commented 2 years ago

前端有部署文档吗

ixrjog commented 2 years ago

本地调试:安装WebStorm直接启动项目即可

AdminLei commented 2 years ago

我在服务器上面打包的,需要修改后端的连接地址吗

ixrjog commented 2 years ago
# 前端打包命令
$ npm i
$ npm run build:prod
AdminLei commented 2 years ago

不需要配置后端服务地址吗

ixrjog commented 2 years ago

前端也是多环境的,开发环境配置文件.env.development,生产环境.env.prod image

AdminLei commented 2 years ago

这个没看见配置服务端地址的地方

ixrjog commented 2 years ago

prod 是相对路径访问,因为前后端使用nginx聚合了; dev环境是通过ip+端口访问服务端的

AdminLei commented 2 years ago

prod还需要nginx单独发布吗

ixrjog commented 2 years ago

前端编译文件放到static目录下,不需要nginx image

AdminLei commented 2 years ago

我放了,但是界面怎么访问呢

ixrjog commented 2 years ago

127.0.0.1:8080/

AdminLei commented 2 years ago

image 这个密码怎么为空。前端登录不了

AdminLei commented 2 years ago

而且控制台报了很多错误 image

ixrjog commented 2 years ago

这个错误可以忽略,你查看user表找到可以登录的用户,把password字段置空,然后用空密码登录即可

ixrjog commented 2 years ago

最近增加了MFA功能,所以修改了user表结构,你可以参考修改

CREATE TABLE `user` (
  `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
  `username` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT '' COMMENT '用户名',
  `uuid` char(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '前端框架用户UUID',
  `password` varchar(256) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL,
  `name` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT '' COMMENT '姓名',
  `display_name` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT '' COMMENT '显示名称',
  `email` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT '' COMMENT '邮箱',
  `is_active` tinyint(1) NOT NULL DEFAULT '1' COMMENT '有效',
  `last_login` timestamp NULL DEFAULT NULL,
  `wechat` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT '',
  `phone` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT '' COMMENT '手机',
  `mfa` tinyint(1) DEFAULT '0' COMMENT '启用MFA',
  `force_mfa` tinyint(1) DEFAULT '0' COMMENT '强制启用MFA',
  `created_by` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT '',
  `source` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT '' COMMENT '数据源',
  `comment` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci,
  `create_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` timestamp NULL DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  PRIMARY KEY (`id`) USING BTREE,
  UNIQUE KEY `username` (`username`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=197 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC COMMENT='oc用户本地用户';
AdminLei commented 2 years ago

image 这个是啥意思

ixrjog commented 2 years ago

你前端代码用错项目了 https://github.com/ixrjog/opscloud4-web

ixrjog commented 2 years ago

有问题明天再说吧,我下班了

AdminLei commented 2 years ago

好的

AdminLei commented 2 years ago

你好我这边部署还是有问题,有办法帮我解决下吗

ixrjog commented 2 years ago

请提出你的问题

AdminLei commented 2 years ago

我又重新按照你给的这个前端打了个prod包,我重新部署发现页面都没有了 image 按f12出现的这样的报错 image

ixrjog commented 2 years ago

WebStorm启动项目看下,不应该有这个错误 image

AdminLei commented 2 years ago

那我去下载一个

AdminLei commented 2 years ago

image 这边打包怎么失败了呢,run build可以 run build:prod不行

AdminLei commented 2 years ago

我run build 能打包这样可以用吗 image

AdminLei commented 2 years ago

你那边能打个前端的prod的release包吗,我用你那个也行

ixrjog commented 2 years ago

前端可以用master分支试下

AdminLei commented 2 years ago

试过 打包都失败了

ixrjog commented 2 years ago

这是d2admin帮助文档: https://d2.pub/zh/doc/d2-admin/learn/start.html#%E5%AE%89%E8%A3%85%E7%8E%AF%E5%A2%83

AdminLei commented 2 years ago

你好 能release一个prod的安装包吗

AdminLei commented 2 years ago

我用你官网的prod包使用这个命令启动java -Xms5120m -Xmx5120m -Xmn2048m -Xss256k -XX:MaxMetaspaceSize=512M -XX:MetaspaceSize=256M -XX:+DisableExplicitGC -XX:+UseConcMarkSweepGC -Dspring.redis.host=127.0.0.1 -Dspring.redis.password=123456 -Dspring.datasource.druid.opscloud.username=opscloud4-prod -Dspring.datasource.druid.opscloud.password=rj6FaDKJFPTcbXDB -Dserver.port=8080 -jar opscloud-manage-prod.jar

在初始化redis这里就不动了,进程还在,没有其他的log打出来 ,我用ss -tnlp|grep 8080显示没有监听这是怎么回事 image image

ixrjog commented 2 years ago

校验Redis和校验Mysql image

AdminLei commented 2 years ago

已经启动成功了 但是登陆显示服务器内部错误,这个在哪儿有log可以查询吗 image

AdminLei commented 2 years ago

这里我看到了log 这个能看出是什么问题吗 image

ixrjog commented 2 years ago

敏感数据都使用了加密,所以你需要配置一个加密的盐

image

方案1: 此处添加一个密码

jasypt:
  encryptor:
    algorithm: PBEWithMD5AndDES
    iv-generator-classname: 'org.jasypt.iv.NoIvGenerator'
    password: XXXXXXXXXXX

方案2: 增加启动参数

java -jar -Djasypt.encryptor.password=XXXXXXXXXX