Skip to content

modified yaml deploy script #5

modified yaml deploy script

modified yaml deploy script #5

Workflow file for this run

name: Deploy to VPS
on:
push:
branches:
- main
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- name: Deploy via SSH
uses: appleboy/ssh-action@master
with:
host: ${{ secrets.VPS_IP }}
username: ${{ secrets.VPS_USERNAME }}
key: ${{ secrets.SSH_PRIVATE_KEY }}
script: |
echo "[INFO] Stopping and removing running container (if exists)..."
docker rm -f codeboxes-server || true
echo "[INFO] Pruning unused Docker networks..."
docker network prune -f
echo "[INFO] Waiting for port 8080 to be released..."
while lsof -i :8080 >/dev/null 2>&1; do
echo "[INFO] Port 8080 still in use. Waiting..."
sleep 2
done
echo "[INFO] Cloning latest code..."
rm -rf codeboxes-server
git clone https://github.com/harshpx/codeboxes-server.git
cd codeboxes-server
echo "[INFO] Building codeboxes-server..."
cd server
docker build -t codeboxes-server .
echo "[INFO] Building code-runner..."
cd ../code-runner
docker build -t code-runner .
echo "[INFO] Starting updated codeboxes-server container..."
docker run -d --name codeboxes-server \
-v /var/run/docker.sock:/var/run/docker.sock \
-p 8080:8080 codeboxes-server