【问题标题】:Gitlab AutoDeployGitlab 自动部署
【发布时间】:2015-05-20 17:52:33
【问题描述】:

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

在我的服务器上,我有一个包含以下内容的接收后挂钩

!/bin/sh

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

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

【问题讨论】:

    标签: apache gitlab githooks


    【解决方案1】:

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

    还有另一种方法可以使用 gitlab 网络挂钩来更新网络服务器。 在您的 Web 服务器上,您应该创建一个 url 以调用 git 命令以更新 Web 服务器内容。然后打开你的 gitlab 项目,在 Settings/Web hooks 创建指向上面创建的 url 的新钩子。当你推入 gitlab 时,它会触发钩子并且你的网站将被更新。

    我认为第二种方式更适用于你的情况。

    【讨论】:

      【解决方案2】:

      gitlab-ci 是解决方案之一。

      很简单,

      • 创建 gitlab 运行器。
      • 将 .gitlab-ci.yml 文件添加到存储库的根目录。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2019-04-16
        • 2016-08-08
        • 2017-10-10
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多