首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Gitlab AutoDeploy

Gitlab AutoDeploy
EN

Stack Overflow用户
提问于 2015-05-21 01:52:33
回答 2查看 674关注 0票数 2

这是我的情况,我有一个网络服务器和gitlab服务器用于我的存储库,一旦我推送到我的远程分支,我正在尝试自动更新我的网站,如果我直接从我的笔记本电脑推送到web服务器,我可以自动更新,但我想推送到我的gitlab服务器,我希望我的gitlab服务器更新位于另一个服务器上的我的网站。

在我的服务器上,我有一个post-receive钩子,包含以下内容

!/bin/sh

git --work-tree=/var/www/html/site --git-dir=/var/repo/site checkout -f

如果我从我的笔记本电脑推送到the服务器,这将会起作用。不是从我的gitlab,我想我需要一个钩子在我的gitlab服务器上,我在网上找不到任何东西。

EN

回答 2

Stack Overflow用户

发布于 2015-07-08 13:00:55

在这种情况下,我们正在使用gitlab-ci。您可以在gitlab实例中设置gitlab-ci。gitlab-ci会在您推送到gitlab-server时触发脚本。在脚本中,您可以更新web服务器内容。

还有另一种更新web服务器的方法,那就是使用gitlab的web钩子。在您的web服务器上,您应该为web服务器内容更新创建一个调用git命令的url。然后打开你的gitlab项目,在Settings/Web hooks中创建指向上面创建的url的新钩子。当你进入gitlab时,它会触发钩子,你的网站就会更新。

我认为第二种方法更适合你的情况。

票数 1
EN

Stack Overflow用户

发布于 2017-08-04 20:21:44

gitlab-ci就是其中一个解决方案。

这很简单,

  • 创建gitlab runner。
  • 将.gitlab-ci.yml文件添加到存储库的根目录。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30356986

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档