Skip to content

gdevby/alert-job

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

alert-job

Version for developers available by links for Windows and for Linux
Russian version you can open by link
The working project is available at the link aj.gdev.by

The main goal of the project:a fast, selective way to get notifications about the needed orders based on your configured filters.
There are two types of filters positive and negative. First, filters are applied to select orders, then negative ones filter out orders that do not suit you.
For example "I want to receive orders that contain backend in the name and do not want to receive orders that contain nodejs in the name".

At the moment, the following exchanges are available on the website: freelance.ru, fl.ru, weblancer.net, freelancehunt, youdo, kwork, freelancer, truelancer.

The project has a microservice architecture.
Used technologies:

  1. Spring Framework
  2. Spring Cloud
  3. ELK
  4. Keycloak
  5. Spring WebFlux
  6. React JS
  7. Docker
  8. Java 17
  9. Maven

Launching the application on your computer

  • To run the application, port 80 must be free.

To run the application, you need to have on your computer Java 17, Maven, Docker.

First, you need to add domain names to the local host in the /etc/hosts/ file (you can’t use localhost because of the gateway), you need to find out what IP was issued by your computer’s modem. For that Linux has command hostname -I, if it hasn't worked install package for work with network via command sudo apt install net-tools and try again. After that copy first IP address and write down next command:

sudo /etc/hosts

paste in this file your copied IP and add after space alertjob.by

Example:
192.168.100.17 alertjob.by

Cloning the project

git clone https://github.com/gdevby/alert-job.git

Go to the directory and build the project

cd alert-job
mvn clean install

Go to the parent directory and after that go to the keycloak directory and execute the script

cd ..
cd keycloak
./build.sh

Next, you need to return to the parent directory to start the front

cd ..
cd front
docker pull nginx:1.25.2
sudo apt install npm
npm i
npm run build
build-prod-example.sh

After that returning to the parent directory, getting all images and running them

cd ..
docker compose pull grafana prometheus nginx-proxy
docker compose create
docker compose start keycloak

wait 15 seconds

docker compose start

You can check the status of services with the command

docker compose ps -a

After completing the above steps, you can open alertjob.by

Test account:

  • Login: test
  • Password: test

You may encounter next problems:

  1. After running mvn clean install project's build may fail. For that check java version (java --version) it's should be 17. And if necessary install appropriate java version via command sudo apt install openjdk-17-jdk
  2. Access being denied for creating containers. Follow docker setup instruction.

Docker setup instruction

Next command will delete all previous docker version on your computer.

for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done

Run next commands

# Add Docker's official GPG key:
sudo apt-get update
sudo apt-get install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc

# Add the repository to Apt sources:
echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
  $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update

Note

If you use an Ubuntu derivative distro, such as Linux Mint, you may need to use UBUNTU_CODENAME instead of VERSION_CODENAME.

Run the Docker installation command

sudo apt-get install docker-ce docker-ce-cli [containerd.io](http://containerd.io/) docker-buildx-plugin docker-compose-plugin

Add user docker in your group sudo usermod -a -G $USER docker
Reboot PC

About

Alert about new job

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 9