作为开发部门,大家都是怎么讲项目交给运维部门上线的?

2016-09-01 18:00:55 +08:00
 zonga

例如开发这边有个 war 包,想要上线直接发给运维的同事这样不够吧。。 另外,打包成 rpm 这个想法怎么样呢?

4702 次点击
所在节点    程序员
37 条回复
lcc4376
2016-09-02 11:02:49 +08:00
git push origin master
salmon5
2016-09-02 11:35:02 +08:00
请问各位,在自动化部署过程中,比如 java 项目,生产环境怎么实现业务不中断的?
切走流量-->重启 tomcat-->切回流量吗?
ma125125t
2016-09-02 11:38:39 +08:00
我们这里开发自己发布 server ...
yatesun
2016-09-02 11:42:05 +08:00
我们是 git 提交完代码以后,让专门负责运维的人,执行一下 shell 代码,批量从多台机子上面 pull 代码。

第一次的话,直接要服务器密码自己配
reeco
2016-09-02 13:49:17 +08:00
@zonga 后续能有什么问题,如果你指的是你的代码造成部署失败,那就只能自己解决
aveline
2016-09-02 14:42:21 +08:00
吐槽一句说打 Docker image 的你们知道 Tomcat 本身就是个容器么 ...
MarioxLinux
2016-09-02 14:50:32 +08:00
@salmon5 生产环境要有主备,先更新备机再更新主机, Jenkins+ansible 实现自动部署, ansible 将应用发布到服务器之前先将原有 webapps 里的包以包名和日期结合的方式备份起来 rsync 到备份服务器,然后重启 tomcat (最好注册成 service 或 systemctl )
julyclyde
2016-09-02 14:57:04 +08:00
@aveline servlet 容器和 linux container 完全两码事好吧!
aveline
2016-09-02 15:02:04 +08:00
@julyclyde 是两回事 ... 但是我总觉得容器里再套个容器怪怪的 ...
Infernalzero
2016-09-02 15:06:55 +08:00
@salmon5 是这样没错,通过 nginx 更改 upstream 来搞
smileawei
2016-09-02 15:09:28 +08:00
用 git 开发把代码推送到 master 分支。然后在服务器 更新代码。编译程序。复制编译好的程序到服务目录。修改配置文件。重启 tomcat 。当然上面的过程用 shell 实现。
julyclyde
2016-09-02 16:07:10 +08:00
@aveline 把 servlet 容器叫成“应用服务器”也行。不过这样又跟 EJB 的重名了?哈哈哈哈……
wintersun
2016-09-02 16:11:18 +08:00
@aveline 蒸锅里,一楼碗里蒸条鱼,二楼碗里咸鸭蛋,…… 蒸锅是容器,碗也是容器,该干嘛干嘛去,哇卡卡卡
ytmsdy
2016-09-02 17:48:48 +08:00
都是自己动手丢上线的,丢给运维,回头出问题了还是回来找你。
kangxianpeng
2016-09-02 19:45:52 +08:00
easy
unixbeta
2016-09-03 11:15:15 +08:00
主要看你多大规模,有没有人手, full stack 适合几个人的小公司,没啥流量服务随时可中断,等你到了一定规模,开发,测试,运维这些就必不可少了,人多了一个人一个想法,必须走流程规范。
koalli
2016-09-03 17:42:39 +08:00
你们都用 jenkins 了,再多一步部署到运维的服务器不行吗...

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

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

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

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

© 2021 V2EX