diff --git a/.github/workflows/docker-image-builder.yml b/.github/workflows/docker-image-builder.yml new file mode 100644 index 0000000..7e189a8 --- /dev/null +++ b/.github/workflows/docker-image-builder.yml @@ -0,0 +1,33 @@ +name: Docker Image CI + +on: + push: + branches: [ "main" ] + pull_request: + branches: [ "main" ] + +jobs: + + build: + runs-on: [ self-hosted ] + + steps: + - uses: actions/checkout@v4 + # - name: Build the Docker image + # run: docker build . --file Dockerfile --tag my-image-name:$(date +%s) + + - name: Build Docker Image + run: | + docker build -t my-app:latest ./backend + # docker build -t my-app:latest . + + # ✅ Stop & Remove Old Running Containers + - name: Stop & Remove Old Containers + run: | + docker stop my-app-container || true + docker rm my-app-container || true + + # ✅ Run Docker Container with Latest Code + - name: Run Docker Container + run: | + docker run -d --name my-app-container -p 8080:8080 my-app:latest