Instale o Docker Desktop (Windows, Mac e Linux).
O Docker Desktop substituiu o Docker Toolbox, que foi descontinuado em 2020. Com o Docker Desktop, os containers são acessíveis via
127.0.0.1diretamente, sem necessidade de máquina virtual.
docker pull postgres
docker pull dpage/pgadmin4
docker pull qaninja/ninjaplus-api
docker pull qaninja/ninjaplus-web
docker network create --driver bridge skynet
docker run --name pgdb --network=skynet -e "POSTGRES_PASSWORD=qaninja" -p 5432:5432 -v var/lib/postgresql/data -d postgres
Adicione as entradas abaixo ao arquivo de hosts do seu sistema operacional:
- Windows:
C:\Windows\System32\drivers\etc\hosts - Mac:
/private/etc/hosts - Linux:
/etc/hosts
127.0.0.1 pgdb
127.0.0.1 pgadmin
127.0.0.1 ninjaplus-api
127.0.0.1 ninjaplus-web
docker run --name pgadmin --network=skynet -p 15432:80 -e "PGADMIN_DEFAULT_EMAIL=root@qaninja.io" -e "PGADMIN_DEFAULT_PASSWORD=qaninja" -d dpage/pgadmin4
URL: http://pgadmin:15432
User: root@qaninja.io
Senha: qaninja
Crie um servidor com:
Nome: pgdb
HostName: pgdb
User: postgres
Senha: qaninja
Para executar os testes, crie um banco de dados com o nome ninjaplus.
docker run --name ninjaplus-api --network=skynet -e "DATABASE=pgdb" -p 3000:3000 -d qaninja/ninjaplus-api
docker run --name ninjaplus-web --network=skynet -e "VUE_APP_API=http://ninjaplus-api:3000" -p 5000:5000 -d qaninja/ninjaplus-web
| Serviço | URL |
|---|---|
| Web | http://ninjaplus-web:5000 |
| API | http://ninjaplus-api:3000 |
| API Docs | http://ninjaplus-api:3000/apidoc |
Com o Postman ou outro cliente HTTP, faça uma requisição POST:
URL:
http://ninjaplus-api:3000/user
{
"full_name": "Nome",
"email": "email@exemplo.com",
"password": "senha"
}Iniciar (após reiniciar o computador):
docker start pgdb pgadmin ninjaplus-api ninjaplus-web
Parar:
docker stop pgdb pgadmin ninjaplus-api ninjaplus-web
Remover (para recomeçar do zero):
docker rm -f pgdb pgadmin ninjaplus-api ninjaplus-web
A aplicação NinjaPlus é de autoria de Fernando Papito, utilizada no treinamento Selenide: Automação de ponta a ponta em Java.



