The installation guide will be only for Ubuntu 18, if you use Windows or another OS please check on the Internet how to run the different commands.
To have to source code on your local machine please run
git clone https://github.com/SebastienMichon/HelloPrintTechnicalTestV2.git
The application is divided into three components:
- Website: The login interface
- Api: The application which will handle the requests and responses
- Core: The queuing system with the business logic
Edit your hosts file
sudo nano /etc/hosts
and add the following lines
127.0.0.1 helloprint.test
127.0.0.1 api.helloprint.test
127.0.0.1 core.helloprint.test
Note: In the following guide we assume you already installed Docker on your machine.
To build the environment, execute this command
./buildenv.sh
To start the environment, run this command in the root file
./start.sh
Website application is the login interface.
After few moment, the interface will be available at the address: http://helloprint.test:8000/
For the queuing system, RabbitMQ will be used.
Note: Wait a minute or two then you can go to http://core.helloprint.test:15672 and use the credentials:
- Login: rabbitmq
- Password: rabbitmq
(You can change the password or create new users in the table Admin)
Even if you executed the ./start.sh script the consumers are not started. This means that the login and recovery password requests will stay in the queues (can be seen http://core.helloprint.test:15672 tab Overview)
To start the login consumer run
./startloginconsumer.sh
To start the email consumer run in a separate terminal
./startemailconsumer.sh
To stop the consumer, press CTRL + C
To stop all the components, execute the command
./stop.sh
Note: The emails can take times to arrive in your mailbox, check also the spam.