我们有一个常规的LAMP项目,最近我们搬到了Gitlab(而不是Github)。
以前我们一直在使用Jenkins进行部署,现在我计划将其迁移到Gitlab CI / CD。
我们为开发版本提供服务器A和B(带有Loadbalancer),为生产环境提供服务器C和D(同样使用LB)。
由于它是一个LAMP项目,部署就像这样简单: - 最新的更改来自回购; - 所有更改的文件都被rsynced到公共Web文件夹中; - 运行一些像composer和npm这样的实用程序。
基本上我需要将更改部署到两个开发VPS和两个生产VPS。
我是否必须在每个人上安装和启动跑步者?还是有更有效的方法?
有很多方法可以实现(我假设你的运行在unix上):
config.toml
标志引用advanced configuration --image
中的容器图像。这将根据您的图像为每个构建触发一个容器。--kubernetes-image
在运行器配置中引用它对于部署,只需使用scp
或rsync
等工具在构建后复制目标服务器上的文件。更好(如果您的LAMP项目已固定化):构建一个docker镜像,将其推送到注册表并将其拉到您的服务器上。更好的是:将所有容器部署在像Kubernetes这样的协调器中。