Logout automático da sessão atual para atualizar os comandos do grupo?

1

Então, estou procurando automatizar uma configuração de instâncias de serviço com a AWS.

O AWS permite que você execute scripts de shell na criação de instâncias.

No entanto! Eu me deparei com um pequeno problema. Eu quero, no ssh inicial no servidor, o uso do comando docker. Eu não sou realmente devops, então peço desculpas se isso é Linux 101 coisas ( ou uma pergunta duplicada ).

Veja o que tentei até agora:

Portanto, tenho um script inicial para configurar firewalls e outros bits que precisamos:

#!/bin/sh
$ sudo ufw allow OpenSSH ApacheSecure
$ echo "y" | sudo ufw enable

Tudo isso funciona bem. Meu script então vai instalar docker-ce :

$ sudo apt update
$ sudo apt install -y apt-transport-https ca-certificates curl software-properties-common
$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
$ sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu bionic stable"
$ sudo apt update
$ apt-cache policy docker-ce
$ sudo apt install -y docker-ce

Se pararmos aqui, ssh-ing no servidor, e o comando docker do usuário nos fornecerá o usual Command 'docker' not found . Ok, preciso adicionar o docker ao grupo do usuário atual:

$ sudo usermod -aG docker $USER
$ newgrp docker

Ao executar esses dois comandos manualmente após o login no servidor - tudo é bom. No entanto, na minha infinita preguiça - não quero fazer isso toda vez que configuramos uma instância do servidor.

Como eu adicionaria o comando docker ao $ USER pronto para inicialização? Eu tentei todos os tipos, mas sem sucesso. Preciso de $ sudo -i e executá-los com privilégios de root?

Eu tentei o acima com $ USER e com o username especificado na criação da instância. Não funciona.

Qualquer dica pró-devops seria muito apreciada!

    
por Wind Up Lord Vexxos 19.10.2018 / 11:19

0 respostas