【发布时间】:2018-05-02 23:44:53
【问题描述】:
在 AWS opsworks 上运行 chef 12 时,谁能指出我安装特定 nodejs 版本的编写方向?
基础设施:EC2,t2.micro,ubuntu 16.04 LTS
自定义食谱:
文件:recipes/default.rb
node.default['packages-cookbook'] = [
'libmysqlclient-dev',
'libmysqlclient20',
'pkg-config',
'libswitch-perl',
'nodejs',
'yarn'
]
文件:Berksfile
source 'https://supermarket.chef.io'
cookbook 'opsworks_ruby', '1.8.0'
cookbook 'packages', '~> 1.0.0'
metadata
文件:metadata.rb
chef_version '>= 12.1' if respond_to?(:chef_version)
depends 'opsworks_ruby', '1.8.0'
depends 'packages', '~> 1.0.0'
AWSCustom json
"ruby-ng": {
"ruby_version": "2.4"
},
"nodejs": {
"version": "8.9.1"
}
当构建需要更高版本时,由于安装了 4.2.6 的 nodejs 版本,构建失败。任何建议将不胜感激!
【问题讨论】:
-
对不起,我忘了加
include_recipe: 'nodejs' -
你的 nodejs 配方在你的部署配方之前吗?应该是的。
标签: node.js chef-infra ubuntu-16.04 aws-opsworks cookbook