Usando Oracle Cloud para criar um ambiente de desenvolvimento (gratís)
Contexto
Um amigo desenvolvedor iniciante que usa o smartphone para aprender programação, me perguntou se é possível criar um “ambiente de desenvolvimento online” usando os recursos gratís do OCI (Oracle Cloud Infrastructure)
Um comentário rápido e fora do assunto: é muito comum aqui no Brasil jovens que desejam aprender sobre desenvolvimento e programação e não têm acesso a um computador. Eu sei, isso é triste, mas é a verdade.
A ideia por trás do artigo é criar um tutorial passo a passo para criar uma máquina virtual, instalar uma interface de desktop, instalar o docker e algumas ferramentas utilitárias.
Vamos começar.
Hands-On
Acesse o site do Oracle Cloud (https://www.oracle.com/cloud/free/) e cadastre-se para obter uma conta gratuita.
Criando a instância da máquina virtual
Após fazer login em sua conta, vá ao menu Instância e clique no botão Criar Instância:
Forneça um nome para suas máquinas (por exemplo dev-machine01)
Vamos configurar a imagem da VM para usar o Ubuntu 20.04:
Configure o formato da VM para ser: Ampere (processadores ARM) usando 4 VCPU e 24 gigabytes de RAM. (Sim, teremos uma boa máquina)
Em Rede, selecione a rede pública padrão e opte por atribuir um endereço IP público:
Na seção Adicionar chaves SSH, recomendo que você crie sua própria chave personalizada e cole a chave pública aqui.
Dica: Como criar uma chave privada e pública para SSH (https://docs.oracle.com/cd/E19683-01/806-4078/6jd6cjru7/index.html)
Em seguida, clique no botão Criar. Agora espere alguns minutos e suas máquinas virtuais estarão instaladas e funcionando.
Configurando a máquina virtual
Aguarde a VM concluir o provisionamento e a inicialização e, em seguida, encontre o IP público no menu Instância:
Conecte-se à VM usando o comando ssh:
ssh -i <caminho para sua chave privada> ubuntu@<seu endereço IP público>
Agora vamos instalar um Desktop Manager, execute os seguintes comandos:
sudo apt update
sudo apt install -y tasksel
sudo apt install -y xubuntu-desktop
Se algum menu solicitar uma opção, use a opção padrão.
Este processo levará alguns minutos.
Para acessar remotamente o Ambiente Desktop, devemos instalar o servidor xrdp na máquina, para instalar execute este comando:
sudo apt install -y xrdp
sudo systemctl enable --now xrdp
sudo su
iptables -F
iptables-save > /etc/iptables/rules.v4
Esses comandos instalarão o xrdp e abrirão todas as portas para conexões remotas.
Agora vamos editar o Xrdp para começar a usar o Xfce:
sudo service xrdp stop
sudo vi /etc/xrdp/startwm.sh
Edite o arquivo, adicionando um comentário(#) nas duas últimas linhas, e adicionando uma nova linha com o seguinte conteúdo “startxfce4", seu arquivo deverá ficar como abaixo:
#test -x /etc/X11/Xsession && exec /etc/X11/Xsession
#exec /bin/sh /etc/X11/Xsession
startxfce4
Salve o arquivo e reinicie o serviço xrdp:
sudo service xrdp start
Para finalizar a configuração é necessário definir uma senha para o usuário ubuntu (esta senha será usada para fazer login na VM via Remote Desktop):
sudo passwd ubuntu
Configuração da lista de segurança
Na página Rede, acesse a sub-rede pública e adicione a seguinte regra de entrada:
Esta regra permitirá a comunicação da Internet para a porta 3389 (Área de Trabalho Remota) da VM.
#Conectando-se à VM usando a Área de Trabalho Remota
Usando o IP público, você pode se conectar à VM:
PS.: Você pode utilizar o seu cliente (Android, etc) desejado.
Use o ubuntu para “Username” e clique em conectar.
Instalando utilitários
Instalar terminador
Terminator é um emulador de terminal de código aberto programado em Java. Está disponível em Microsoft Windows, macOS, Linux e outros sistemas Unix que usam o X Window System. O Terminator será executado em qualquer sistema POSIX moderno executando Java 6 ou posterior. O Terminator é licenciado sob a licença GPL-2.0 ou posterior.
Para instalar o terminador, basta executar o seguinte comando:
sudo apt install -y terminator
Instalar docker
Para instalar o docker recomendo que você siga este tutorial https://docs.docker.com/engine/install/ubuntu/.
Preste atenção apenas a esta etapa:
Lembre-se de selecionar arm64.
E então siga este tutorial https://docs.docker.com/engine/install/linux-postinstall/
Instalar ASDF
asdf é uma ferramenta CLI que pode gerenciar versões de tempo de execução de vários idiomas por projeto. É como gvm, nvm, rbenv e pyenv (e mais), tudo em um.
Para instalar o ASDF recomendo que você siga este tutorial https://asdf-vm.com/#/core-manage-asdf?id=asdf
Usando ASDF você pode instalar e gerenciar múltiplas versões da mesma linguagem, por exemplo, Java, Python, Nodejs, Ruby, etc.
Instale o VSCode
Para instalar o VSCode recomendo que você acesse o site https://code.visualstudio.com/docs/?dv=linuxarm64 e baixe o pacote.