如题, 想请教下有使用过 Gitlab CI/CD 进行集成 /部署的 V2er 们, 如何应对打包 /编译型应用的部署上线
比如 php 需要 composer install 之后连带 vendor 目录一起上线, vue 需要打包之后上线 dist 目录, golang 需要编译出二进制文件之后连带配置文件上线.
我的问题是: 如何将编译完成之后的整个目录或者可执行文件+配置文件最好能以增量更新的方式部署到线上呢?
目前我想到的方案有
各位 V2er 们有啥好方案可以分享下嘛
1
wangxiaoaer 2020-03-16 20:57:44 +08:00 via Android
目前应用基于 docker 运行,提交代码触发打 docker 镜像并上传到私服,手工通过容器管理工具更新。
还没做到每一个单独的服务能自己重启。 |
2
Torpedo 2020-03-16 21:01:54 +08:00
不是很懂。php 要重启吗?不是把文件上传了就能更新,能跑么?
|
3
jaynos OP @wangxiaoaer 如果已经打包了镜像的情况下, 直接通过触发一个服务器的钩子实现 docker 的自动重启应该是挺简单的呀?
|
4
jaynos OP @Torpedo #2 在文件量多的情况下, 可能会出现请求进入时没完全替换完毕, 然后就可能一半文件是新的, 一半的旧的
|
5
wangxiaoaer 2020-03-16 21:11:34 +08:00 via Android
@jaynos 懒得弄了,钩子也很考虑安全性,集群啥的。
|
6
jaynos OP @wangxiaoaer #5 没有什么安全性是一个 ip 白名单不能解决的 (doge
|