例如部署 LAMP 服务器跑业务: 系统 CentOS7.3
1,编译源代码方式部署
2,yum 方式安装部署
请教各位大佬,一般都使用哪种方式部署业务服务器,便于后期的程序更新和维护
1 NoAnyLove 2017-08-15 09:20:05 +08:00 源码编译现在大家一般都是用一键脚本比较多吧,一般的一键脚本都会自带升级脚本,只要你有时间记得去更新也行。 yum 安装其实更方便,安装和更新都超快,不过一般系统源版本都比较老,虽然想 Apache、MySQL 也有提供官方源,不过如果我没记错的话,PHP 是木有官方源的,要么自己编译、要么用第三方或者系统源 |
![]() | 2 albertofwb 2017-08-15 09:20:53 +08:00 via Android 定制自己的一键脚本 |
![]() | 3 U7Q5tLAex2FI0o0g 2017-08-15 09:24:20 +08:00 系统的源非常旧,先安装第三方源,然后 yum |
![]() | 4 care OP @NoAnyLove 源码编译方式比较好统一管理,yum 方式就是比较简单,做业务迁移的时候可能就没有源码编译方式方便吧?这是我个人的理解,不对勿喷^_^ |
![]() | 5 ericls 2017-08-15 09:26:48 +08:00 via iPhone K8s |
6 whileFalse 2017-08-15 09:28:09 +08:00 docker, 维护炒鸡容易 |
![]() | 7 my101du 2017-08-15 09:28:12 +08:00 最开始就一台机器,自己一步步手动编译 ----> 后来机器多了,自己写部署脚本 ----> 后来买了一些 $S 的机器,就用网上成熟的一键脚本 最近因为 PHP 升级比较激进,再加上用了喜欢刷版本往前跑的 Laravel,导致本地环境开发后,发现生产环境升级 PHP 要中断服务( 7.0->7.1 ),准备学习然后换 Docker + Jenkins 了.... |
![]() | 8 pengdu 2017-08-15 09:39:40 +08:00 现在流行 Docker + Kubernetes |
![]() | 9 cloverstd 2017-08-15 09:42:57 +08:00 Docker ,升级镜像即可 |
![]() | 10 jarlyyn 2017-08-15 09:47:08 +08:00 via Android 能上 docker 上 docker 不能上走源。 对外提供服务的别作死自己编译。不然有紧急安全升级你就哭吧。 |
11 sublime 2017-08-15 09:48:24 +08:00 换软件源,yum 安装,部分使用源码编译的方式,不过不怎么好维护,比如换服务商或增加机器的时候,就要重新来一遍了,目前考虑换 docker |
12 NoAnyLove 2017-08-15 10:00:23 +08:00 @care 为啥源码编译会比较方便管理?没有做过业务迁移。。。。。。不过在我看来,如果只有一两台机器,我就手动操作了,不过如果机器多了的话还是得写脚本或者借用其他部署工具。Dockers 很棒,不过一直没有机会尝试 |
![]() | 14 privil 2017-08-15 10:08:47 +08:00 源码编译打包自己的 rpm 包发布,老牌的批量做法是这样的 |
![]() | 15 majinjing3 2017-08-15 10:11:31 +08:00 via Android @NoAnyLove VPS 上可以安装 docker |
16 NoAnyLove 2017-08-15 10:32:23 +08:00 @majinjing3 基于 OpenVZ、Xen 和 KVM 等技术的 VPS 上也可以吗? |
17 wekw 2017-08-15 10:45:33 +08:00 via Android docker 就是个软件,没啥不能用的 |
![]() | 18 wwqgtxx 2017-08-15 12:59:41 +08:00 via iPhone @NoAnyLove 内核版本高于 3.4 就能完美运行了,在 2.8 到 3.4 之间会有点兼容性问题,2.6 基本上没戏 |
19 NoAnyLove 2017-08-15 13:44:13 +08:00 @wwqgtxx 最近刚刚把内核升级到了 3.9,不过我估计 512M 的丝机应该跑不了,Orz。我一直以为 Docker 用了虚拟机技术,因为在 Windows 上要么需要 VirtualBox,要么需要用 Hyper-V,搜索了一下才发现用的是 Linux 的容器技术,和虚拟机技术不同。话说,应用部署在 Docker 里面对性能的损耗有多大? |
![]() | 20 wwqgtxx 2017-08-15 13:56:50 +08:00 via iPhone ![]() @NoAnyLove 几乎没有损耗 在 win/mac 下需要虚拟机是因为他依赖于 linux 内核的 cgroups,这个只有 linux 内核才提供了,而在标准 linux 下是直接实现的 |
21 simapple 2017-08-15 13:58:07 +08:00 现在来说 当然是 docker |
![]() | 22 libook 2017-08-15 15:36:17 +08:00 看需求,没有特殊需求当然是越简单越好。 |
![]() | 23 joye1230 2017-08-15 16:59:22 +08:00 apt-get 绝对比 yum 方便........ |
![]() | 24 majinjing3 2017-08-15 17:18:00 +08:00 via Android @NoAnyLove docker 主要依赖内核版本,现在基本都支持的,很方便的, |
![]() | 25 care OP @my101du 请教一下,你生产环境是用的 yum update php 更新的 7.0-->7.1 还是源代码编译更新的?因为我使用第三方 php 源,使用 yum update php 方式是无法更新 php 版本的,系统提示“ packages php available,but not installed. no packages marked for update ” 话说 yum list [filename]参数怎么不能 list 出第三方源的软件列表吗? |
![]() | 26 my101du 2017-08-16 09:16:57 +08:00 |
![]() | 27 sofs 2017-08-16 11:02:36 +08:00 docker |