如何在 Elastic beanstalk 上安装 yarn?

如何在 Elastic beanstalk 上安装 yarn?

目前您无法使用 yum 安装 yarn,因此似乎没有简单的方法来创建在资产预编译之前安装它的配置。

答案1

您可以使用以下方式自定义安装的软件包和部署时运行的命令:.ebextensions

对于 yarn,我创建了一个文件,其中包含以下命令,用于安装最新的节点版本和 yarn:

# .ebextensions/yarn.config
commands:
  01_install_node:
    command: |
      sudo curl --silent --location https://rpm.nodesource.com/setup_8.x | sudo bash -
      sudo yum -y install nodejs

  02_install_yarn:
    # don't run the command if yarn is already installed (file /usr/bin/yarn exists)
    test: '[ ! -f /usr/bin/yarn ] && echo "Yarn not found, installing..."'
    command: |
      sudo wget https://dl.yarnpkg.com/rpm/yarn.repo -O /etc/yum.repos.d/yarn.repo
      sudo yum -y install yarn

更多文档:https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/customize-containers-ec2.html

答案2

正如接受的答案中所述,您可以创建.ebextensions/some.config订购的 EB 实例以在实例创建时安装 yarn。在当前的 EB 环境中,我发现以下配置更简洁易懂:

# .ebextensions/some.config
commands:
  01_install_yarn:
    command: |
      set -e
      npm i -g yarn
      ln -s "$(npm bin --global)"/yarn /usr/bin/yarn
    test: "! yarn -v"

事实上,当前的 EB rub​​y​​ 环境包含node可在 处获得的二进制文件/usr/bin/node,您可以使用它yarn通过进行安装npm

相关内容