Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
149 commits
Select commit Hold shift + click to select a range
e61d7c7
Fix some issues
raffi-fajar Oct 30, 2025
be06f7f
Work in progress before pulling
raffi-fajar Oct 30, 2025
83ffc56
Merge pull request #23 from PentabyteDevAlign/feat/crud_project
tonyoditanto Oct 31, 2025
12deec5
- Add Endpoint GET Staff Project
raffi-fajar Oct 31, 2025
630c073
feat: integrate project-pm
irsyadibdrrhmn Oct 31, 2025
6dc94e4
Merge pull request #24 from PentabyteDevAlign/feat/project-pm
irsyadibdrrhmn Oct 31, 2025
d4904ab
Add the task-specific endpoints
raffi-fajar Oct 31, 2025
cfc7ad8
Add the task-related endpoints and postman collection
raffi-fajar Oct 31, 2025
839522b
Fix error
raffi-fajar Oct 31, 2025
76e3953
feat: socket, kanban, loading
zrahadiz Oct 31, 2025
39e4ae7
Added Approval From Supervisor to join other project and notification…
tonyoditanto Nov 1, 2025
b632d4a
Merge branch 'master' of https://github.com/zrahadiz/DevAlign into fe…
mhasnanr Nov 1, 2025
3839d82
Merge pull request #25 from PentabyteDevAlign/feat/crud_project
tonyoditanto Nov 1, 2025
f57deea
Merge branch 'page/hr-employee' of https://github.com/zrahadiz/DevAli…
zrahadiz Nov 1, 2025
45b458f
feat: add roster recommendations preprocessing
mhasnanr Nov 1, 2025
b448f74
delete CV-Extractor directory
mhasnanr Nov 1, 2025
6ba4c92
delete: unnecessary docker volume on ai-backend
mhasnanr Nov 1, 2025
4338849
delete CV-Extractor directory
mhasnanr Nov 1, 2025
92e824d
delete: dev command on makefile
mhasnanr Nov 1, 2025
09280e9
feat: kanban edit
zrahadiz Nov 1, 2025
61d830d
ref: kanban edit (be ketinggalan)
zrahadiz Nov 1, 2025
63c0b17
feat: implement AI to rerank the candidate's order
mhasnanr Nov 1, 2025
8caa015
Merge branch 'feature/roster-recommendation' into dev
mhasnanr Nov 1, 2025
8eb54f2
fix: api docs and model response
mhasnanr Nov 2, 2025
1fa1630
feat: kanban column, toaster
zrahadiz Nov 2, 2025
7e48bf9
fix: routing and layout
zrahadiz Nov 2, 2025
63b24af
Merge branch 'dev' of https://github.com/zrahadiz/DevAlign into kanban
zrahadiz Nov 2, 2025
4f612ae
Merge pull request #26 from PentabyteDevAlign/kanban
zrahadiz Nov 2, 2025
bb82842
feat: add employee excel
zrahadiz Nov 3, 2025
8173805
refactor: optimize recommendation response time by changing llm model
mhasnanr Nov 3, 2025
07dfb48
Merge branch 'dev' of https://github.com/zrahadiz/DevAlign into dev
mhasnanr Nov 3, 2025
ffa3024
feat: add project embeddings function upon changing project status to…
mhasnanr Nov 3, 2025
880f6ae
fix: docker compose command
mhasnanr Nov 3, 2025
c2bc301
Fix update feat
raffi-fajar Nov 3, 2025
c212bd1
fix: revert skill matching function
mhasnanr Nov 3, 2025
ea3b2df
ref: he employee
zrahadiz Nov 3, 2025
fb8c1af
fix: merge
zrahadiz Nov 3, 2025
8eb8f77
Fix update
raffi-fajar Nov 3, 2025
0050556
fix: merge lagi
zrahadiz Nov 3, 2025
28842f1
Merge pull request #27 from PentabyteDevAlign/dev
raffi-fajar Nov 3, 2025
7647cba
add top contributor endpoint
raffi-fajar Nov 3, 2025
801bd2a
Merge pull request #28 from PentabyteDevAlign/dev
raffi-fajar Nov 3, 2025
01e4087
Resolve merge conflict in employee-import-template.xlsx
raffi-fajar Nov 3, 2025
16ac9dd
Fix skills edit and add dashboard endpoint
raffi-fajar Nov 3, 2025
61eb262
Merge branch 'dev' of https://github.com/zrahadiz/DevAlign into notif…
zrahadiz Nov 3, 2025
dc08e31
Merge pull request #29 from PentabyteDevAlign/raffi
raffi-fajar Nov 3, 2025
0e74946
Set retry db connection atleast 3 times when it is failed
tonyoditanto Nov 4, 2025
fda0af9
Merge pull request #30 from PentabyteDevAlign/feat/notifications
tonyoditanto Nov 4, 2025
b36ff69
ref: change to skillSelector
zrahadiz Nov 4, 2025
1e70151
fix: merge
zrahadiz Nov 4, 2025
cda9204
feat: project-detail-pm
irsyadibdrrhmn Nov 4, 2025
8396278
Merge pull request #31 from PentabyteDevAlign/notification
zrahadiz Nov 4, 2025
3ca5b55
Merge pull request #32 from PentabyteDevAlign/dev
raffi-fajar Nov 4, 2025
7e34535
Endpoint list colleague
tonyoditanto Nov 4, 2025
563085b
add projecCount
raffi-fajar Nov 4, 2025
4bd9084
Merge pull request #33 from PentabyteDevAlign/feat/list_colleague
tonyoditanto Nov 4, 2025
699ca42
ref: inbox
zrahadiz Nov 4, 2025
0258783
Merge pull request #34 from PentabyteDevAlign/notification
zrahadiz Nov 4, 2025
31ad634
feat: apapun itu
mhasnanr Nov 4, 2025
126ea92
fix: merge conflict
mhasnanr Nov 4, 2025
dbd64eb
Modification on Notifications
tonyoditanto Nov 4, 2025
bba2731
Merge pull request #35 from PentabyteDevAlign/feat/notifications
tonyoditanto Nov 4, 2025
9102389
feat: team management on manager and staff
mhasnanr Nov 4, 2025
b8b04d0
project creator assign to the project
tonyoditanto Nov 4, 2025
649d3e8
Merge pull request #36 from PentabyteDevAlign/feat/project_assignment
tonyoditanto Nov 4, 2025
df5864a
feat: upadate project-detail-pm
irsyadibdrrhmn Nov 4, 2025
67529f0
ref: inbox beres
zrahadiz Nov 4, 2025
ab4128a
Merge pull request #37 from PentabyteDevAlign/notification
zrahadiz Nov 4, 2025
fe00ca9
Merge branch 'feat/project-detail-pm' of https://github.com/zrahadiz/…
zrahadiz Nov 4, 2025
e76e4b5
ref: login data
zrahadiz Nov 4, 2025
fbf4581
Merge pull request #38 from PentabyteDevAlign/notification
zrahadiz Nov 4, 2025
a46fdf0
fix: merge conflict
mhasnanr Nov 5, 2025
5503e5a
feat: upadate project-detail-pm
irsyadibdrrhmn Nov 5, 2025
4d3041f
feat: upadate project-detail-pm
irsyadibdrrhmn Nov 5, 2025
8197d33
Add endpoint dashboard and other things
raffi-fajar Nov 5, 2025
6c110da
Merge branch 'raffi' into dev
raffi-fajar Nov 5, 2025
c73798b
Merge pull request #39 from PentabyteDevAlign/dev
raffi-fajar Nov 5, 2025
00a1313
fix: wrong embedding vector endpoint
mhasnanr Nov 5, 2025
1f857f4
Merge branch 'dev' of https://github.com/zrahadiz/DevAlign into dev
mhasnanr Nov 5, 2025
0b61f91
project
zrahadiz Nov 5, 2025
7eaa6bb
Merge pull request #40 from PentabyteDevAlign/feat/project-detail-pm
zrahadiz Nov 5, 2025
5affbaf
fix: error when updating project
mhasnanr Nov 5, 2025
37bac77
feat: add profile-menu
irsyadibdrrhmn Nov 5, 2025
4419bfc
Add queue using Agenda Package for seperate Notifications Worker Exec…
tonyoditanto Nov 5, 2025
5168b45
Merge pull request #41 from PentabyteDevAlign/feat/queue-worker-notif
tonyoditanto Nov 5, 2025
e392b36
Fix endpoint dashboard (HR & Managaer) and implement it to frontend
raffi-fajar Nov 5, 2025
94ce21c
Fix endpoint dashboard (HR & Managaer) and implement it to frontend
raffi-fajar Nov 5, 2025
2b36ad1
Merge pull request #42 from PentabyteDevAlign/raffi
raffi-fajar Nov 5, 2025
5801816
Fix initial profile
raffi-fajar Nov 5, 2025
e0600cf
Merge pull request #43 from PentabyteDevAlign/raffi
raffi-fajar Nov 5, 2025
44fa610
Fix initial employee profile & bulk email send
raffi-fajar Nov 5, 2025
431fd84
Merge pull request #44 from PentabyteDevAlign/raffi
raffi-fajar Nov 5, 2025
f98d31c
ref: create project
zrahadiz Nov 5, 2025
915edec
Merge pull request #45 from PentabyteDevAlign/feat/project-detail-pm
zrahadiz Nov 5, 2025
bf746d8
fix: merge conflicts
zrahadiz Nov 5, 2025
8f3cf72
Merge pull request #46 from PentabyteDevAlign/feat/profile-menu
zrahadiz Nov 5, 2025
21e55db
Fix template excel and DoB problem
raffi-fajar Nov 5, 2025
e731975
Merge pull request #47 from PentabyteDevAlign/raffi
raffi-fajar Nov 5, 2025
9b32549
Fix Dashboard Manager
raffi-fajar Nov 5, 2025
f6992e1
CICD Script Docker for Backend
tonyoditanto Nov 5, 2025
59dce1c
fix: wrong workload calculation and skill matching
mhasnanr Nov 5, 2025
fdfd4fb
fix: wrong indentation on project_count
mhasnanr Nov 5, 2025
d7f574a
Add position filter & Fix HR Dashboard
raffi-fajar Nov 5, 2025
242619b
feat: change employee status (activate and deactivate)
mhasnanr Nov 5, 2025
a1e439a
Troubleshoot Docker Issue on VM
tonyoditanto Nov 5, 2025
b0d1edd
fix: Move swagger and nodemon to dependencies for Docker
tonyoditanto Nov 5, 2025
33b5196
feat: fix hr-list-project
irsyadibdrrhmn Nov 5, 2025
801ee68
Merge pull request #49 from PentabyteDevAlign/feat/profile-menu
irsyadibdrrhmn Nov 5, 2025
fa2771e
feat: update login-and-friends-page
irsyadibdrrhmn Nov 5, 2025
92fd8a1
Merge pull request #50 from PentabyteDevAlign/feat/login
irsyadibdrrhmn Nov 5, 2025
9b9855a
feat: add alert dialog confirmation on user activation/deactivation
mhasnanr Nov 5, 2025
1c36b39
config CORS conflict EC2 Instance
tonyoditanto Nov 5, 2025
2c9ea81
Merge branch 'dev' of https://github.com/PentabyteDevAlign/DevAlign i…
tonyoditanto Nov 5, 2025
8b0a1fe
pass error
zrahadiz Nov 5, 2025
e139403
Merge branch 'feat/profile-menu' of https://github.com/zrahadiz/DevAl…
zrahadiz Nov 5, 2025
d6247a6
push
zrahadiz Nov 5, 2025
4540a16
Merge branch 'dev' of https://github.com/zrahadiz/DevAlign into feat/…
zrahadiz Nov 5, 2025
1677e05
Merge pull request #51 from PentabyteDevAlign/feat/profile-menu
zrahadiz Nov 5, 2025
2c5114b
Fix hr dashboard
raffi-fajar Nov 5, 2025
84950b5
CORS
tonyoditanto Nov 5, 2025
cf75456
Merge pull request #52 from PentabyteDevAlign/raffi
raffi-fajar Nov 5, 2025
d8c93f1
fix: create project, add Id roster
zrahadiz Nov 5, 2025
c47e675
Merge branch 'dev' of https://github.com/zrahadiz/DevAlign into feat/…
zrahadiz Nov 5, 2025
69902fa
buat push
zrahadiz Nov 5, 2025
96dc85c
Merge pull request #53 from PentabyteDevAlign/feat/profile-menu
zrahadiz Nov 5, 2025
749faf8
Merge branch 'feature/change-employee-status' into dev
mhasnanr Nov 6, 2025
41e6d2c
Merge branch 'fix/roster-recommendations' into dev
mhasnanr Nov 6, 2025
87cd23b
fix: Update CORS to allow Frontend EC2 (18.141.166.14)
tonyoditanto Nov 6, 2025
cc5bc96
fix: Update production API URL to point to Backend EC2
tonyoditanto Nov 6, 2025
93fd6c2
fix: Replace hardcoded localhost URLs with environment variable
tonyoditanto Nov 6, 2025
80bb4b6
ref: projects and kanban loading
zrahadiz Nov 6, 2025
47a24e0
Merge branch 'dev' of https://github.com/zrahadiz/DevAlign into feat/…
zrahadiz Nov 6, 2025
8f70a8d
pull: dev
zrahadiz Nov 6, 2025
aadc645
Merge pull request #54 from PentabyteDevAlign/feat/profile-menu
zrahadiz Nov 6, 2025
e0df775
fix: wrong logic on changing employee status
mhasnanr Nov 6, 2025
c97a722
Merge branch 'fix/change-employee-status' into dev
mhasnanr Nov 6, 2025
6d287de
ref: create position, and refactor dashboard
zrahadiz Nov 6, 2025
4e66294
Merge pull request #55 from PentabyteDevAlign/feat/profile-menu
zrahadiz Nov 6, 2025
c84d1f0
update: top contributors filter & overdue stats
mhasnanr Nov 6, 2025
bb4f0fd
fix: replace hardcoded AI backend URL with environment variable
tonyoditanto Nov 6, 2025
e129dc9
Merge branch 'dev' of https://github.com/zrahadiz/DevAlign into dev
mhasnanr Nov 6, 2025
31be1e8
ref: position only staff in create employee, parse excell position on…
zrahadiz Nov 6, 2025
ff5ac59
pull: dev
zrahadiz Nov 6, 2025
c9ab391
Merge pull request #56 from PentabyteDevAlign/feat/profile-menu
zrahadiz Nov 6, 2025
9935c4c
fix: use .env.production from repository in frontend deployment
tonyoditanto Nov 6, 2025
6914cb4
Merge branch 'fix/CORSAI' into dev
tonyoditanto Nov 6, 2025
fdc0bf5
Fix Dashboard Staff
raffi-fajar Nov 6, 2025
30ada91
Merge pull request #57 from PentabyteDevAlign/raffi
raffi-fajar Nov 6, 2025
0ac8d01
ref: redesign manager dashboard
zrahadiz Nov 6, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
131 changes: 88 additions & 43 deletions .github/workflows/deploy-backend.yml
Original file line number Diff line number Diff line change
@@ -1,71 +1,116 @@
name: Deploy Backend
name: Deploy Backend to EC2

on:
push:
branches:
- dev
paths:
- 'Backend/**'
- 'AI/**'
- 'docker-compose.yml'
- '.github/workflows/deploy-backend.yml'

jobs:
deploy-backend:
name: Deploy Backend to EC2
name: Deploy Backend + AI with Docker
runs-on: ubuntu-latest

steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Deploy to Backend EC2
uses: appleboy/ssh-action@master
with:
host: ${{ secrets.BACKEND_HOST }}
username: ubuntu
key: ${{ secrets.BACKEND_SSH_KEY }}
script: |
echo "🚀 Starting backend deployment..."
echo "=========================================="
echo "🚀 Starting Backend Deployment with Docker"
echo "=========================================="
echo "📍 Backend Server: 13.250.231.18"

# Navigate to app directory
cd /var/www/backend

# Backup old version
echo ""

# Navigate to deployment directory
cd /var/www/backend || exit 1

# Backup old version (if exists)
if [ -d "DevAlign" ]; then
echo "📦 Backing up current version..."
rm -rf DevAlign-backup
mv DevAlign DevAlign-backup
cp -r DevAlign DevAlign-backup
echo "✅ Backup created"
fi

# Clone latest code
echo "📥 Cloning repository..."
git clone -b dev https://github.com/PentabyteDevAlign/DevAlign.git

# Install dependencies
echo "📦 Installing backend dependencies..."
cd DevAlign/Backend
npm install --production

# Copy environment file

# Clone or pull latest code from dev branch
if [ -d "DevAlign" ]; then
echo "📥 Pulling latest changes from dev branch..."
cd DevAlign
git fetch origin dev
git reset --hard origin/dev
git pull origin dev
else
echo "📥 Cloning repository..."
git clone -b dev https://github.com/PentabyteDevAlign/DevAlign.git
cd DevAlign
fi

echo "✅ Code updated successfully"
echo ""

# Copy environment files from secure location
echo "⚙️ Copying environment variables..."
cp /var/www/backend/.env .env

# Stop existing PM2 process
echo "🛑 Stopping existing backend process..."
pm2 stop devalign-backend 2>/dev/null || true
pm2 delete devalign-backend 2>/dev/null || true

# Start backend with PM2
echo "▶️ Starting backend server..."
pm2 start npm --name "devalign-backend" -- start
pm2 save

# Setup PM2 auto-restart on server reboot
sudo env PATH=$PATH:/usr/bin pm2 startup systemd -u ubuntu --hp /home/ubuntu 2>/dev/null || true

# Show status
pm2 status

echo "✅ Backend deployment complete!"
echo "🌐 Backend API running at: http://13.250.231.18:5000"
echo "📊 Check logs with: pm2 logs devalign-backend"
cp /var/www/backend/.env.backend Backend/.env
cp /var/www/backend/.env.ai AI/.env
echo "✅ Environment files copied"
echo ""

# Stop existing Docker containers
echo "🛑 Stopping existing Docker containers..."
docker compose down 2>/dev/null || true
echo "✅ Containers stopped"
echo ""

# Remove old images to save space (optional, but recommended)
echo "🧹 Cleaning up old Docker images..."
docker image prune -f
echo ""

# Build and start containers
echo "🔨 Building and starting Docker containers..."
docker compose up -d --build

# Wait for containers to be healthy
echo ""
echo "⏳ Waiting for containers to start (10 seconds)..."
sleep 10

# Check container status
echo ""
echo "📊 Container Status:"
docker compose ps

# Show container logs (last 20 lines)
echo ""
echo "📋 Recent Backend Logs:"
docker compose logs --tail=20 backend

echo ""
echo "📋 Recent AI Backend Logs:"
docker compose logs --tail=20 ai-backend

echo ""
echo "=========================================="
echo "✅ Backend Deployment Complete!"
echo "=========================================="
echo "🌐 Backend API: http://13.250.231.18:5000"
echo "🤖 AI API: http://13.250.231.18:8000"
echo ""
echo "📊 Check logs with:"
echo " docker compose logs -f backend"
echo " docker compose logs -f ai-backend"
echo ""
echo "🔄 Restart containers with:"
echo " docker compose restart"
echo "=========================================="
138 changes: 102 additions & 36 deletions .github/workflows/deploy-frontend.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: Deploy Frontend
name: Deploy Frontend to EC2

on:
push:
Expand All @@ -10,63 +10,129 @@ on:

jobs:
deploy-frontend:
name: Deploy Frontend to EC2
name: Deploy Frontend with Nginx
runs-on: ubuntu-latest

steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Deploy to Frontend EC2
uses: appleboy/ssh-action@master
with:
host: ${{ secrets.FRONTEND_HOST }}
username: ubuntu
key: ${{ secrets.FRONTEND_SSH_KEY }}
script: |
echo "🚀 Starting frontend deployment..."
echo "=========================================="
echo "🚀 Starting Frontend Deployment"
echo "=========================================="
echo "📍 Frontend Server: 18.141.166.14"

# Navigate to app directory
cd /var/www/frontend

# Backup old version
echo ""

# Navigate to deployment directory
cd /var/www/frontend || exit 1

# Backup old version (if exists)
if [ -d "DevAlign" ]; then
echo "📦 Backing up current version..."
rm -rf DevAlign-backup
mv DevAlign DevAlign-backup
cp -r DevAlign DevAlign-backup
echo "✅ Backup created"
fi

# Clone or pull latest code from dev branch
if [ -d "DevAlign" ]; then
echo "📥 Pulling latest changes from dev branch..."
cd DevAlign
git fetch origin dev
git reset --hard origin/dev
git pull origin dev
else
echo "📥 Cloning repository..."
git clone -b dev https://github.com/PentabyteDevAlign/DevAlign.git
cd DevAlign
fi

echo "✅ Code updated successfully"
echo ""

# Navigate to Frontend directory
cd Frontend

# Use .env.production from repository (it's already in the code)
echo "⚙️ Using production environment from repository..."
if [ -f ".env.production" ]; then
echo "✅ Production environment file found in repository"
cat .env.production
else
echo "⚠️ Warning: .env.production not found in repository"
fi

# Clone latest code
echo "📥 Cloning repository..."
git clone -b dev https://github.com/PentabyteDevAlign/DevAlign.git

# Build frontend
echo "🔨 Building frontend..."
cd DevAlign/Frontend

echo ""

# Install dependencies
echo "📦 Installing dependencies..."
npm install

# Build for production (will use .env.production)
echo "✅ Dependencies installed"
echo ""

# Build for production
echo "🔨 Building frontend for production..."
npm run build

# Verify build was created
if [ ! -d "dist" ]; then
echo "❌ Build failed - dist folder not found!"
exit 1
fi

echo "📂 Build complete - files in dist folder"
ls -la dist

# Restart Nginx
echo "🔄 Restarting Nginx..."
sudo systemctl restart nginx


echo "✅ Build complete"
echo ""

# Show build directory contents
echo "📂 Build output (dist/):"
ls -lh dist/ | head -10
echo ""

# Copy build to nginx serve directory
echo "📋 Deploying build to Nginx..."
sudo rm -rf /var/www/html/*
sudo cp -r dist/* /var/www/html/
echo "✅ Build deployed to /var/www/html/"
echo ""

# Set proper permissions
echo "🔐 Setting permissions..."
sudo chown -R www-data:www-data /var/www/html
sudo chmod -R 755 /var/www/html
echo "✅ Permissions set"
echo ""

# Test Nginx configuration
echo "🔍 Testing Nginx configuration..."
sudo nginx -t

# Reload Nginx
echo "🔄 Reloading Nginx..."
sudo systemctl reload nginx

# Check Nginx status
sudo systemctl status nginx --no-pager | head -5

echo "✅ Frontend deployment complete!"
echo "🌐 Frontend is live at: http://18.141.166.14"
echo "🔗 API calls will be proxied to: http://13.250.231.18:5000"
echo ""
echo "📊 Nginx Status:"
sudo systemctl status nginx --no-pager | head -10

echo ""
echo "=========================================="
echo "✅ Frontend Deployment Complete!"
echo "=========================================="
echo "🌐 Frontend URL: http://18.141.166.14"
echo "🔗 API Endpoint: http://13.250.231.18:5000"
echo ""
echo "📊 Check Nginx logs with:"
echo " sudo tail -f /var/log/nginx/access.log"
echo " sudo tail -f /var/log/nginx/error.log"
echo ""
echo "🔄 Manage Nginx with:"
echo " sudo systemctl status nginx"
echo " sudo systemctl restart nginx"
echo "=========================================="
9 changes: 6 additions & 3 deletions AI/.env.example
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
LLM_MODEL=
LLM_BASE_URL=
LLM_API_KEY=
LLM_MODEL_CV=
LLM_BASE_URL_CV=
EMBEDDING_MODEL=
LLM_BASE_URL_ROSTER=
LLM_API_KEY=
MONGO_URI=
2 changes: 1 addition & 1 deletion AI/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -15,4 +15,4 @@ COPY . .
EXPOSE 8000

# Run the application
CMD ["uvicorn", "src.main:app", "--host", "0.0.0.0", "--port", "8000"]
CMD ["uvicorn", "src.main:app", "--host", "0.0.0.0", "--port", "8000", "--reload"]
18 changes: 18 additions & 0 deletions AI/Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
IMAGE_NAME = ai-be
TAG = v1
PORT = 8000

.PHONY: build run stop clean

build:
docker build -t $(IMAGE_NAME):$(TAG) .

run:
docker run --rm -p $(PORT):$(PORT) -it $(IMAGE_NAME):$(TAG)

stop:
docker stop $$(docker ps -q --filter ancestor=$(IMAGE_NAME):$(TAG))

clean:
docker rm $$(docker ps -a -q --filter ancestor=$(IMAGE_NAME):$(TAG)) || true
docker rmi $(IMAGE_NAME):$(TAG) || true
Loading