特定的 nodejs 版本,opsworks_ruby,aws,chef 12

Posted

技术标签:

【中文标题】特定的 nodejs 版本,opsworks_ruby,aws,chef 12【英文标题】:specific nodejs version, opsworks_ruby, aws, chef 12 【发布时间】: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 配方在你的部署配方之前吗?应该是的。 【参考方案1】:

通过 poise-javascript

javascript_runtime '8.9.1'

或在角色/包装器中:

default['poise-javascript']['options']['version'] = '8.9.1'

默认情况下,它从 NodeJS 项目的静态二进制文件安装,因此它应该支持任何版本。

【讨论】:

以上是关于特定的 nodejs 版本,opsworks_ruby,aws,chef 12的主要内容,如果未能解决你的问题,请参考以下文章

NODE升级到V12.X.X

如何在cloudformation中为我的beantalk定义nodejs的版本

钱包开发 - USDT - 三nodejs版本

windows使用nvm安装nodejs后升级npm报错

NodeJS学习

为不同的 VS 解决方案使用特定版本的 npm/node?