Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/yotamaflalo/loan_prediction_model
https://github.com/yotamaflalo/loan_prediction_model
Last synced: 27 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/yotamaflalo/loan_prediction_model
- Owner: YotamAflalo
- Created: 2024-08-05T15:19:22.000Z (3 months ago)
- Default Branch: main
- Last Pushed: 2024-08-05T17:38:40.000Z (3 months ago)
- Last Synced: 2024-08-05T20:39:52.515Z (3 months ago)
- Language: Python
- Size: 26.4 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Setup Virtual Environment
```python
conda create -n jenkins-env python=3.10 -y
conda activate jenkins-env
pip install -r requirements.txt
pip install .
```# Test the FASTAPI
```json
{
"Gender": "Male",
"Married": "No",
"Dependents": "2",
"Education": "Graduate",
"Self_Employed": "No",
"ApplicantIncome": 5849,
"CoapplicantIncome": 0,
"LoanAmount": 1000,
"Loan_Amount_Term": 1,
"Credit_History": "1.0",
"Property_Area": "Rural"
}```
# Docker Commands
```
docker build -t loan_pred:v1 .
docker build -t manifoldailearning/cicd:latest .
docker push manifoldailearning/cicd:latestdocker run -d -it --name modelv1 -p 8005:8005 manifoldailearning/cicd:latest bash
docker exec modelv1 python prediction_model/training_pipeline.py
docker exec modelv1 pytest -v --junitxml TestResults.xml --cache-clear
docker cp modelv1:/code/src/TestResults.xml .
docker exec -d -w /code modelv1 python main.py
docker exec -d -w /code modelv1 uvicorn main:app --proxy-headers --host 0.0.0.0 --port 8005
```
# Installation of Jenkins
```bash
curl -fsSL https://pkg.jenkins.io/debian-stable/jenkins.io-2023.key | sudo tee \
/usr/share/keyrings/jenkins-keyring.asc > /dev/null
echo deb [signed-by=/usr/share/keyrings/jenkins-keyring.asc] \
https://pkg.jenkins.io/debian-stable binary/ | sudo tee \
/etc/apt/sources.list.d/jenkins.list > /dev/null
sudo apt-get update
sudo apt-get install jenkinssudo apt update
sudo apt install fontconfig openjdk-17-jre
java -versionsudo systemctl enable jenkins
sudo systemctl start jenkins
sudo systemctl status jenkins
````
sudo cat /var/lib/jenkins/secrets/initialAdminPassword
````bash
# Add Docker's official GPG key:
sudo apt-get update
sudo apt-get install ca-certificates curl gnupg
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg# Add the repository to Apt sources:
for pkg in docker.io docker-doc docker-compose podman-docker containerd runc; do sudo apt-get remove $pkg; doneecho \
"deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] 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
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-pluginsudo usermod -a -G docker jenkins
sudo usermod -a -G docker $USER```
# Admin password Jenkins
`sudo cat /var/lib/jenkins/secrets/initialAdminPassword`
# Payload URL format in github repo webhook
`http://:8080/github-webhook/` #replace it with ur own public-ipv4 address
```
# Additional Improvements
docker remove $(docker ps -a -q)
docker images --format "{{.ID}} {{.CreatedAt}}" | sort -rk 2 | awk 'NR==1{print $1}'# Create Stage Branch
`git checkout -b staging`
`git push `