【问题标题】:Run Laravel Envoy as root以 root 身份运行 Laravel Envoy
【发布时间】:2020-08-18 08:41:48
【问题描述】:

如何以 root 身份运行 Envoy?我有一台禁用了root 访问权限的公司服务器,但我可以sudo -s 访问它。

例如,当通过 Envoy 运行 git pull 时,我得到:

[jenkins]:错误:无法打开 .git/FETCH_HEAD:权限被拒绝

我已尝试将sudo -s 添加到它:

@task('deploy')

sudo -s
git pull

@endtask

但这只会导致:

[jenkins]: sudo: 没有 tty 并且没有指定 askpass 程序

有没有办法以 root 身份运行 Envoy?

【问题讨论】:

    标签: php laravel deployment laravel-7 laravel-envoy


    【解决方案1】:

    只需以root身份登录服务器

    @servers(['web' => 'root@webserver.example.com'])
    

    但以 root 身份登录并运行命令并不是最安全的方式。 设置 ssh 密钥后,至少禁用 root 的密码登录。

    在完美的世界中,您应该有一个用户可以运行仅部署所需的命令。

    【讨论】:

    • 您是否错过了“禁用root访问”部分:)?
    • 没有。但是只需要 root 来做git pull 实在是太多了。将项目文件夹所有者切换为您正在登录的用户,并允许 Web 服务器用户或组访问它。
    • git pull 就是一个例子。那里还有很多事情要做。例如 Docker 部署也需要 root 访问权限
    • 所以只需以 root 身份登录 :)
    • 如果禁用了 root 访问权限,我将无法以 root 身份登录。即使我可以,公司也不会像爆米花一样提供 root 凭据
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-07-29
    • 2013-12-19
    • 2022-09-29
    • 2020-07-14
    • 2010-09-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多