Skip to content

Latest commit

 

History

History
55 lines (38 loc) · 1.74 KB

File metadata and controls

55 lines (38 loc) · 1.74 KB

Forum

Description

This project aims to create a web forum with the following key features:

Communication Between Users

Users can create posts and comments.

Likes and Dislikes

Only registered users can like or dislike posts and comments. The number of likes and dislikes is visible to all users.

Filter Mechanism

Users can filter displayed posts by categories, created posts, and liked posts. Filtering by categories is akin to subforums.

Authentication

Users can register by providing their email, username, and password.

SQLite Database

Data, including users, posts, and comments, is stored using the SQLite database.

Docker Integration

The project is containerized using Docker for easy deployment. Basic Docker knowledge is recommended; refer to the provided Docker basics resource.

Usage

Using Docker

  1. Clone the repository

  2. Build Docker image: docker image build -f Dockerfile -t <name_of_the_image> . Example: docker image build -f Dockerfile -t forum .

  3. Start the container: docker container run -p <port_you_what_to_run> --detach --name <name_of_the_container> <name_of_the_image> Example: docker container run -p 8000:8000 --detach --name dockerized-forum forum

  4. Run the container to start server: docker exec -it <container_name> ./main Example: docker exec -it dockerized-forum ./main

For local testing:

Make sure you have Docker running

> bash scripts/dockerize.sh 

After completing tests, run the following to clean up images

> bash scripts/cleanup.sh 

Authors

Mauno Tälli

@mtalli

Andreas Selge

@aselge