Como pré-instalar o sbt em um AWS EC2 instância (através de dados de usuário)?

0

Pergunta

O que eu tentei sem sucesso dentro do AWS EC2 usuário seção de dados:

#!/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

O problema é que o .sdkman pasta nos casos acima não é armazenado dentro do /home/ec2-user/.sdkman mas, ao invés de sempre armazenados dentro da pasta raiz em /.sdkman para um sistema automatizado de instância do EC2 em lançamento com os dados do usuário. (Manual de instalação via cmd na outra mão de obra)

O que falha para fazer o seguinte comando seguinte para instalar o sbt, através de dados do usuário:

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

(Aceitando-se que a .sdkman pasta está armazenada dentro da pasta raiz) eu também tentei em vez disso, use:

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

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

mas isso não funciona e retorna o seguinte erro:

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

Como ele se parece com o comando fonte, não sou capaz de ir abaixo de /home/ec2-user/ como é sempre adicionado de volta para o caminho.


Recursos adicionais: https://sdkman.io/install


A AWS EC2 Exemplo: Amazon Linux 2 AMI (HVM) - Kernel 5.10 // t3a.x-grande

Qualquer ajuda sobre como eu posso instalar o sbt em um AWS EC2 instância automatizada através de dados do usuário é muito apreciada!

amazon-ec2 amazon-web-services sbt scala
2021-11-23 11:58:17
2

Melhor resposta

1

Ec2 UserData será executado como usuário root. se você deseja executar a dados do usuário como um usuário não-root, por favor, siga o formato abaixo. p.s - todos os comandos tem de ser aninhado sob comando único, se você quebrar em várias linhas e, em seguida, a linha seguinte será executado sob o usuário root.

#!/bin/bash
su ec2-user bash -c "curl -s "https://get.sdkman.io" | bash; source "/home/ec2-user/.sdkman/bin/sdkman-init.sh"
2021-11-29 01:35:55
0

Eu não tenho certeza se isso pode ajudar você ou não.Eu acho que você pode instalar o vim yum. Os seguintes comandos podem funcionar para você em dados do usuário.

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

link para passos acima

Documentação: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/install-software.html

2021-11-27 06:42:18

Muito obrigado pela sua resposta. Bintray tanto quanto eu estou ciente de não oferecer os seus serviços mais uma vez que a 01 de Maio de 2021, o que leva introduzindo o comando acima para: "...<head><title>403 Proibido</title></head>..." jfrog.com/blog/... Se você encontrou uma maneira diferente para resolver este problema acima, por favor, deixe-me saber
MJey

Em outros idiomas

Esta página está em outros idiomas

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................