【问题标题】:How to pre-install sbt on an AWS EC2 instance (via user data)?如何在 AWS EC2 实例上预安装 sbt(通过用户数据)?
【发布时间】:2022-01-01 22:09:43
【问题描述】:

我在 AWS EC2 用户数据部分尝试了很多但没有成功:

#!/bin/bash    
sudo curl -s "https://get.sdkman.io" | bash

#!/bin/bash
sudo curl --output-dir "/home/ec2-user/" -s "https://get.sdkman.io" | bash

问题是上述情况下的.sdkman 文件夹 没有存储在/home/ec2-user/.sdkman 中,而是始终存储在根文件夹中 下/.sdkman 用于使用用户数据自动启动 EC2 实例。 (另一方面,通过 cmd 手动安装也可以)

以下命令无法通过用户数据安装 sbt:

source "/home/ec2-user/.sdkman/bin/sdkman-init.sh"

(接受 .sdkman 文件夹存储在根文件夹中)我也尝试使用:

source ".sdkman/bin/sdkman-init.sh"

source "/.sdkman/bin/sdkman-init.sh"

但这不起作用并返回以下错误:

find: ‘/home/ec2-user/.sdkman/src’: No such file or directory
find: ‘/home/ec2-user/.sdkman/ext’: No such file or directory
touch: cannot touch ‘/home/ec2-user/.sdkman/var/delay_upgrade’: No such file or directory
-bash: /home/ec2-user/.sdkman/var/candidates: No such file or directory
-bash: __sdkman_echo_debug: command not found

就像使用源命令一样,我无法进入 /home/ec2-user/ 下面,因为它总是被添加回路径中。


更多资源: https://sdkman.io/install


AWS EC2 实例:Amazon Linux 2 AMI (HVM) - 内核 5.10 // t3a.xlarge

非常感谢任何有关如何通过用户数据自动在 AWS EC2 实例上安装 sbt 的帮助!

【问题讨论】:

    标签: amazon-web-services scala amazon-ec2 sbt sdkman


    【解决方案1】:

    Ec2 UserData 将作为 root 用户执行。如果您想以非 root 用户身份执行用户数据,请遵循以下格式。 p.s - 所有命令必须嵌套在单个命令下,如果分成多行,则下一行将在 root 用户下执行。

    #!/bin/bash
    su ec2-user bash -c "curl -s "https://get.sdkman.io" | bash; source "/home/ec2-user/.sdkman/bin/sdkman-init.sh"
    

    【讨论】:

      【解决方案2】:

      我不确定这是否对你有帮助。我认为你可以安装 vim yum。以下命令可能适用于用户数据。

      #!/bin/bash 
      curl https://bintray.com/sbt/rpm/rpm | sudo tee /etc/yum.repos.d/bintray-sbt-rpm.repo
      sudo yum install sbt
      

      link 以上步骤

      文档:https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/install-software.html

      【讨论】:

      • 非常感谢您的回复。据我所知,Bintray 自 2021 年 5 月 1 日起不再提供服务,通过输入上述命令导致:“...403 Forbidden.. ." jfrog.com/blog/…如果您在上面找到了解决此问题的其他方法,请告诉我
      猜你喜欢
      • 2020-10-16
      • 2021-12-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-10-04
      • 2012-02-28
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多