MBA in JAVA, SOA and Internet of Things at FIAP. MBA Systems Engineering at ESAB. 10 years experience in business analysis and web application.
Publicado em 12/08/2018
Este post é uma continuação da série: “Pipeline de Entrega Contínua“.
Você vai aprender a fazer um deploy manual de um CRUD JAVA (Usando JSF) em uma instância Amazon. Feito isso, no próximo tutorial, usaremos o Jenkins para compilar o código do GitHub e publicar automaticamente na instância.
Segue o print inicial do CRUD:

Deixei publicado em minha conta do GITHUB o código-fonte do CRUD. Também deixei disponível na pasta raiz o arquivo jsf_crud.war, que será usado no deploy.
Acesse o código-fonte usando a URL: https://github.com/fabiodamas/jsf_crud

Copie o arquivo “jsf_crud.war” para o seu computador. O link do arquivo no github é: https://github.com/fabiodamas/jsf_crud/blob/master/jsf_crud.war
Para copiar o arquivo .war para a instância da Amazon, será usado o comando scp do Linux, onde podemos copiar arquivos entre servidores distintos.
A sintaxe básica do comando é:
scp -i <ARQUIVO_CHAVE_SEGURANCA> <CAMINHO_ORIGEM> <usuario>@<Máquina_ Destino> : <Caminho_Destino>
Aqui está o comando montado:
sudo scp -i "/home/fabio/.ssh/exemplo2_teste.pem" /home/fabio/eclipse-workspace/jsf_crud/jsf_crud.war ubuntu@ec2-18-206-94-90.compute-1.amazonaws.com:~
Após a execução, você verá o andamento do status do upload:

Acesse a máquina virtual, usando o comando que a Amazon fornece:
ssh -i "exemplo2_teste.pem" ubuntu@ec2-18-206-94-90.compute-1.amazonaws.com
Verifique se o arquivo .war está na pasta Home, com o comando ls:

Copie o arquivo .war para a pasta de deploy do Tomcat:
sudo cp jsf_crud.war /var/lib/tomcat8/webapps
Efetue restart no Tomcat
sudo service tomcat8 restart
Entre na pasta webapps. Se encontrarmos uma pasta como o nome jsf_crud, significa que o arquivo foi “explodido” nessa pasta e o deploy foi feito.
cd /var/lib/tomcat8/webapps
Verifique o conteúdo da pasta.
ls -la

Copie o endereço da máquina disponível no painel inicial da Amazon. Digite no navegador o endereço copiado, acrescido da porta 8080:

Repare que na URL do navegador, foi inserido também a pasta “jsf_crud”.
O schema do mysql é “exemplo1”, criado na parte 2 do tutorial. A senha é a mesma definida na parte 2 do tutorial: 12345678.
Se você definiu uma outra senha, ou deixou outro nome no schema, você poderá baixar o código-fonte em seu computador e alterar o arquivo DatabaseOperation.java:

Veja aqui a paste 2 do tutorial: Parte 2 de 5 – Pipeline de Entrega Contínua – SSH / Java / Tomcat / Mysql.
Veja aqui a paste 4 do tutorial: Parte 4 de 5 – Instalação do Jenkins.