各位大佬,请问类似 dubbo 或者 springcloud 是怎么部署的呀

2020-06-23 13:05:30 +08:00
 Saurichthys

都是相同的项目,只是部分端口号和参数配置不一致,要部署多个,请问怎么部署比较方便唉

2383 次点击
所在节点    Java
9 条回复
qinxi
2020-06-23 14:20:40 +08:00
docker / 启动参数改端口
ixx
2020-06-23 14:49:44 +08:00
有容器就使用容器替你管理实例个数,不用容器就手动部署就完了,或者写个脚本自动启动
Saurichthys
2020-06-23 14:59:10 +08:00
@ixx 没有容器唉 那就是一个 jar 启动的时候传入不同的参数就完事了吗
yinzhili
2020-06-23 15:18:06 +08:00
启动参数就可以指定 profile: -Dspring.profiles.active=XXXX
ixx
2020-06-23 15:49:43 +08:00
@Saurichthys #3 可以像 4 楼说哪样把多个配置写在项目里 启动的时候指定 使用哪个配置就行了 也可以在外部写配置文件 启动的时候分别指定使用哪个启动
koalr
2020-06-23 18:10:39 +08:00
说个题外话 dubbo 刚出了一个反序列化漏洞💩
Saurichthys
2020-06-23 21:12:23 +08:00
@ixx 花了一下午搞定了 写了个脚本 从外部输入配置信息
@koalr 是吗 研究一下一下!!! 不过我们是内网的东西 应该影响不大
jorneyr
2020-06-23 22:40:00 +08:00
我使用 gradle ssh 插件进行部署:

```
task deploy(dependsOn: bootJar) {
def jar = bootJar.archiveFileName.get()
def dir = config.getProperty('deploy.dir')
def path = "${dir}/${jar}"
def port = config.getProperty('deploy.port')

doLast {
ssh.run {
session(remotes.server) {
put from: "${buildDir}/libs/${jar}", into: "${path}.bak"
execute """
source /root/.bash_profile;
kill `ps aux | grep -i ${jar} | grep -v grep | awk '{print \$2}'`;
mv -f ${path}.bak ${path};
nohup java -jar -Dfile.encoding=UTF-8 ${path} --server.port=${port} > /dev/null 2>&1 &
"""
}
}
}
}
```
xxxyy2y
2020-06-24 14:30:20 +08:00
集成下 jenkins 就好了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/684079

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX