使用 Jekyll 与 Github webhook 实现自动部署

使用 Jekyll 与 Github webhook 实现自动部署

我是一名设计师,想用 Jekyll 提供一些静态网站。

所以我获取了一个 VPS(ubuntu 12.04)并安装了 nginx、ruby 和 jekyll。

我一天中要用几台不同的电脑工作,所以我想使用 GitHub 来简化其客户端。因此我安装了 git、php5fpm(fastcgi) 并设置了两个基本脚本,一个用于处理 webhook ( webhook.php),另一个用于编译和部署网站 ( build.sh)


在一些帮助下,我能够进展到可以运行构建脚本的地步,但是构建脚本在运行 Jekyll 命令时停止并抛出一个错误:

bash: command not found

在运行我的常规用户时情况并非如此,所以我认为这与运行 nginx 工作者的用户有关.bash_profile(即www-data)。

总而言之,我的问题是:如何让用户可以使用 Jekyll 命令www-data

答案1

不要尝试让www-data用户使用 Jekyll。更简洁、更好的方法是这样的:

  1. 创建一个新用户,专门用于运行你的 Jekyll 网站
    • 让该用户可以使用 Jekyll,测试它是否具备所需的一切
  2. 创建一个虚拟主机,专用于运行你的 Jekyll 网站
    • 使其以新的专用用户身份运行
    • 使其文档根目录归新的专用用户所有

此设置应该更易于测试、调试和复制,并且也更安全。

相关内容