在 Centos 6 上安装 Code Deploy Agent
Installing Code Deploy Agent on Centos 6
有个Centos 6.6主机运行傀儡3.7.5
为了使 puppet 3.7.5 正常工作,我安装了 ruby-1.8.7
当我尝试安装代码部署代理时,它说
rpm 包 codedeploy-agent-1.0-1 中的 PREIN scriptlet 错误。751.noarch
==========================================================================================
AWS CodeDeploy needs Ruby version 2.0.x to be installed for root under /usr/bin/ruby.
If you have Ruby version 2.0.x installed for other users, please create a symlink
to /usr/bin/ruby2.0.
Otherwise please install Ruby 2.0.x for root user.
==========================================================================================
Centos 仓库中似乎没有 ruby-2 的软件包。0.x
我不确定是否要安装 ruby-2.0,因为它可能会破坏人偶?
我已经使用 rvm
在测试机器上管理 ruby 版本,但它似乎需要很多我不想在生产系统上安装的工具
这是我添加的用户数据脚本,使 ruby-2.0 在 6.6 系统上与 rvm 一起工作
gpg2 --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A170311380
4BB82D39DC0E3
curl -L get.rvm.io | bash -s stable --ruby
source /usr/local/rvm/scripts/rvm
ln -s `which ruby` /usr/bin/ruby2.0
/usr/local/aws/bin/aws s3 cp 's3://aws-codedeploy-eu-west-1/latest/install' .
chmod 0775 install
./install auto
我意识到这个问题表面上更适合 "server fault" 但也许 "Code Deploy" 不适合生产服务器?
有什么建议吗?例如,将 rvm
ruby 转换为 rpm 是否容易?
根据:
http://docs.aws.amazon.com/codedeploy/latest/userguide/how-to-run-agent.html
代码部署代理仅适用于 RHEL7。如果您使用的是 RHEL/CentOS6,那么您处于不受支持的领域。虽然这在技术上是可行的 [1],但如果您必须在这里询问,则表明它超出了您的能力范围。将您的应用程序迁移到 RHEL7 可能更容易。
[1]提示:Centos6软件合集ruby200:
https://www.softwarecollections.org/en/scls/rhscl/ruby200/
只要满足 ruby 版本的要求,CodeDeploy 代理应该可以在大多数 linux 风格中工作。该代理需要 Ruby >= 2.0,并且由于 CentOS 上的 YUM 不支持安装 ruby 2.x 二进制文件,您将需要手动编译和安装它(或添加具有所需的 YUM 存储库ruby)。安装后,在 /usr/bin/ruby 中创建安装的符号链接。应该是这样,安装脚本现在应该可以工作了。
有个Centos 6.6主机运行傀儡3.7.5
为了使 puppet 3.7.5 正常工作,我安装了 ruby-1.8.7
当我尝试安装代码部署代理时,它说
rpm 包 codedeploy-agent-1.0-1 中的 PREIN scriptlet 错误。751.noarch
==========================================================================================
AWS CodeDeploy needs Ruby version 2.0.x to be installed for root under /usr/bin/ruby.
If you have Ruby version 2.0.x installed for other users, please create a symlink
to /usr/bin/ruby2.0.
Otherwise please install Ruby 2.0.x for root user.
==========================================================================================
Centos 仓库中似乎没有 ruby-2 的软件包。0.x 我不确定是否要安装 ruby-2.0,因为它可能会破坏人偶?
我已经使用 rvm
在测试机器上管理 ruby 版本,但它似乎需要很多我不想在生产系统上安装的工具
这是我添加的用户数据脚本,使 ruby-2.0 在 6.6 系统上与 rvm 一起工作
gpg2 --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A170311380
4BB82D39DC0E3
curl -L get.rvm.io | bash -s stable --ruby
source /usr/local/rvm/scripts/rvm
ln -s `which ruby` /usr/bin/ruby2.0
/usr/local/aws/bin/aws s3 cp 's3://aws-codedeploy-eu-west-1/latest/install' .
chmod 0775 install
./install auto
我意识到这个问题表面上更适合 "server fault" 但也许 "Code Deploy" 不适合生产服务器?
有什么建议吗?例如,将 rvm
ruby 转换为 rpm 是否容易?
根据:
http://docs.aws.amazon.com/codedeploy/latest/userguide/how-to-run-agent.html
代码部署代理仅适用于 RHEL7。如果您使用的是 RHEL/CentOS6,那么您处于不受支持的领域。虽然这在技术上是可行的 [1],但如果您必须在这里询问,则表明它超出了您的能力范围。将您的应用程序迁移到 RHEL7 可能更容易。
[1]提示:Centos6软件合集ruby200: https://www.softwarecollections.org/en/scls/rhscl/ruby200/
只要满足 ruby 版本的要求,CodeDeploy 代理应该可以在大多数 linux 风格中工作。该代理需要 Ruby >= 2.0,并且由于 CentOS 上的 YUM 不支持安装 ruby 2.x 二进制文件,您将需要手动编译和安装它(或添加具有所需的 YUM 存储库ruby)。安装后,在 /usr/bin/ruby 中创建安装的符号链接。应该是这样,安装脚本现在应该可以工作了。