如何正确安装 dokku - 使用或不使用 sudo?
How to correctly install dokku - with or without sudo?
我现在正在学习 dokku 以进行简单的 Web 部署。官方安装说明声明此命令:
wget -qO- https://raw.github.com/progrium/dokku/v0.3.12/bootstrap.sh | sudo DOKKU_TAG=v0.3.12 bash
我不是开发人员或管理员,但据我了解这一行,它在 root
帐户下执行所有引导和安装,感谢 sudo
。所以 dokku 将被签出到具有 root
访问权限的目录中,并且所有其他目录(如 /var/lib/dokku/
也将具有 root
访问权限。
问题是——互联网上所有关于 dokku 的文章都指示执行 dokku
命令或在没有 sudo
的情况下执行与 dokku 相关的操作。例如,关于这个 dokku
数据库插件的说明,https://github.com/krisrang/dokku-mariadb,指示通过以下方式安装它:
cd /var/lib/dokku/plugins
git clone https://github.com/krisrang/dokku-mariadb mariadb
dokku plugins-install
这是行不通的,因为 /var/lib/dokku/plugins
拥有 root
访问权限,而 git clone
将因 acces denied
而失败。现在很难成为一名非管理员,但也许有人会暗示我做错了什么?我是否需要以其他方式安装 dokku,或者互联网上所有与 dokku 相关的教程都假定我在 root
下执行它们(根据我有限的管理知识,出于安全原因,强烈不推荐)。
据我所知,您需要 运行 它作为 root。没有 root 权限安装程序的传统方法是 download the source and compile it,这可以通过 运行ning:
来完成
git clone https://github.com/progrium/dokku.git
make
make install
Dokku 的 makefile 依赖于 apt-get,它需要 root 访问 运行。
我不熟悉 dokku 或 dokku-mariadb,但我认为 dokku-mariadb 的作者也假定了 root 访问权限。
你应该 运行 这三个命令 sudo
:
sudo su -
dokku 二进制文件将 运行 编码为 dokku 用户,即使您以 root 身份执行也是如此。所以按原样 运行 应该没问题。一旦您成为 sudo 用户,只需 运行 您问题中列出的安装说明。希望我的回答有帮助! :)
我也像他们提到的那样联系了他们:
In the future, we'll have a method to install plugins directly with a
dokku command
如果有人 运行 正在研究是否可以通过 root 用户安装(根据指南在新创建的 VM 上),请尝试检查此 Github 问题:
https://github.com/dokku/dokku/issues/961
由于与 dokku 相关的命令的前缀是 #
而不是 $
,这意味着非 root 用户不需要 运行 它们。这也使得编写 suddo 变得不必要(并且我的经验适得其反)。
我现在正在学习 dokku 以进行简单的 Web 部署。官方安装说明声明此命令:
wget -qO- https://raw.github.com/progrium/dokku/v0.3.12/bootstrap.sh | sudo DOKKU_TAG=v0.3.12 bash
我不是开发人员或管理员,但据我了解这一行,它在 root
帐户下执行所有引导和安装,感谢 sudo
。所以 dokku 将被签出到具有 root
访问权限的目录中,并且所有其他目录(如 /var/lib/dokku/
也将具有 root
访问权限。
问题是——互联网上所有关于 dokku 的文章都指示执行 dokku
命令或在没有 sudo
的情况下执行与 dokku 相关的操作。例如,关于这个 dokku
数据库插件的说明,https://github.com/krisrang/dokku-mariadb,指示通过以下方式安装它:
cd /var/lib/dokku/plugins
git clone https://github.com/krisrang/dokku-mariadb mariadb
dokku plugins-install
这是行不通的,因为 /var/lib/dokku/plugins
拥有 root
访问权限,而 git clone
将因 acces denied
而失败。现在很难成为一名非管理员,但也许有人会暗示我做错了什么?我是否需要以其他方式安装 dokku,或者互联网上所有与 dokku 相关的教程都假定我在 root
下执行它们(根据我有限的管理知识,出于安全原因,强烈不推荐)。
据我所知,您需要 运行 它作为 root。没有 root 权限安装程序的传统方法是 download the source and compile it,这可以通过 运行ning:
来完成git clone https://github.com/progrium/dokku.git
make
make install
Dokku 的 makefile 依赖于 apt-get,它需要 root 访问 运行。
我不熟悉 dokku 或 dokku-mariadb,但我认为 dokku-mariadb 的作者也假定了 root 访问权限。
你应该 运行 这三个命令 sudo
:
sudo su -
dokku 二进制文件将 运行 编码为 dokku 用户,即使您以 root 身份执行也是如此。所以按原样 运行 应该没问题。一旦您成为 sudo 用户,只需 运行 您问题中列出的安装说明。希望我的回答有帮助! :)
我也像他们提到的那样联系了他们:
In the future, we'll have a method to install plugins directly with a dokku command
如果有人 运行 正在研究是否可以通过 root 用户安装(根据指南在新创建的 VM 上),请尝试检查此 Github 问题: https://github.com/dokku/dokku/issues/961
由于与 dokku 相关的命令的前缀是 #
而不是 $
,这意味着非 root 用户不需要 运行 它们。这也使得编写 suddo 变得不必要(并且我的经验适得其反)。