-
sudo apt-get update
-
sudo apt-get upgrade
-
sudo apt install openjdk-11-jre-headless
O Projeto também irá necessitar de instalar o maven:
- sudo apt-get install maven
-
sudo apt update
-
sudo apt install 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
-
sudo apt-get install docker-ce docker-ce-cli containerd.io
A partir desta fase o docker já deverá estar instalado, no entando deve ser necessário correr o docker com permissões de administrador. Para testar se isto aconteceu mesmo deve correr o seguinte comando:
- docker run hello-world
Se tiver havido algum erro com o processo corra os seguintes comandos:
-
sudo groupadd docker
-
sudo usermod -aG docker $USER
Reinicie o terminal em que se encontra e corra o seguinte commando:
- newgrp docker
Volte a correr o comando docker run hello-world e averigue se correu tudo bem
Para configurar a Base de Dados deverá correr os seguintes passos:
-
docker pull postgres:alpine
-
docker run --name cuckoo-db -e POSTGRES_PASSWORD=1234 -d -p 5435:5432 postgres:alpine
-
docker exec -it cuckoo-db psql -U postgres -c \ "CREATE DATABASE cuckoodb;"
O processo de configuração está acabado. Deverá colocar o servidor a correr.
Estes são os passos necessários para colocar os sistemas a correr:-
Docker (uma vez aberto o terminal só é necessário executar este comando uma vez) docker start cuckoo-db
-
Back End (dentro da pasta backend/UserServer) mvn clean spring-boot:run
Cada um deve correr ao mesmo tempo pelo que exige que seja corrido em terminais separados. Para encerrar cada um deverá usar o CTRL+C em cada um.
Sempre que alguma atualização é feita, a base de dados deve ser reiniciada. Para tal deveremos executar os seguintes comandos:-
docker start cuckoo-db
-
docker exec -it cuckoo-db psql -U postgres
-
DROP DATABASE cuckoodb; CREATE DATABASE cuckoodb;
-
\q
Após isto basta executar diretamente o servidor.
É necessário ter um application-prod.properties e um .env na diretoria principal.Para fazer build deverá ser executado:
- docker build --tag backend-cuckoo .
Para correr é necessário executar:
- docker run --env-file .env -v application-prod.properties:target/classes/ backend-cuckoo:latest
A porta 8080 irá ficar exposta para tcp
De forma a puder usar a API da google para puder mandar notificações é necessário colocar um ficheiro chamado cuckoocovid-firebase-key.json dentro na pasta resources/keys.
Este ficheiro deve ser obtido nas settings do projeto na secção "Contas de Serviço", fazendo o download de uma nova chave. O ficheiro tem de ter o mesmo nome.