Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/hamid-rezaei/search-movie
This project is a simple movie search API built with the Django REST framework.
https://github.com/hamid-rezaei/search-movie
django docker docker-compose elasticsearch kibana kubernetes kubernetes-deployment rapid-api redis
Last synced: about 1 month ago
JSON representation
This project is a simple movie search API built with the Django REST framework.
- Host: GitHub
- URL: https://github.com/hamid-rezaei/search-movie
- Owner: Hamid-Rezaei
- Created: 2024-04-08T20:11:44.000Z (10 months ago)
- Default Branch: master
- Last Pushed: 2024-06-10T11:37:25.000Z (8 months ago)
- Last Synced: 2024-11-09T23:16:31.253Z (3 months ago)
- Topics: django, docker, docker-compose, elasticsearch, kibana, kubernetes, kubernetes-deployment, rapid-api, redis
- Language: Python
- Homepage:
- Size: 680 KB
- Stars: 5
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Search Movie
## Overview
This project is a straightforward movie search API developed using the Django REST framework, designed to practice Docker Compose and Kubernetes concepts. Additionally, Docker Compose is utilized to integrate Kibana, Elasticsearch, and Redis into the project.
- `Kibana`: A data visualization and exploration tool used for log and time-series analytics, application monitoring, and operational intelligence. It is designed to work with Elasticsearch, providing a user-friendly interface for searching, viewing, and interacting with data stored in Elasticsearch indices.
- `Elasticsearch`: A highly scalable open-source search and analytics engine used for a variety of applications, including log and event data analysis, full-text search, and more. It stores and indexes data in near real-time, allowing for powerful and fast searches.
- `Redis`: An in-memory data structure store that can be used as a database, cache, and message broker. It supports various data structures such as strings, hashes, lists, sets, and more, offering high performance and scalability for caching frequently accessed data.
Prerequisites
-------------
1. Kubernetes Cluster
2. kubectl
3. Docker and Docker ComposeHow To Run
----------
1. **Clone the project**
2. **Set Up the Environment**
3. **Create project docker image**
```bash
docker build . -t main_service
```
`With docker-compose`
4. **Create docker network**
```bash
docker network create musicnet
```
5. **Start docker-compose.yml file**
```bash
docker-compose up -d
```
`With h8s`
4. **Apply the Kubernetes manifest files to your cluster using kubectl**
```bash
kubectl apply -f deployment/.
```
5. **Verify Deployment**
```bash
kubectl get pods
kubectl get services
```