This repository was archived by the owner on Aug 19, 2025. It is now read-only.
File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 1+ name : Deploy to VPS
2+
3+ on :
4+ workflow_run :
5+ workflows : ["Docker Image CI"]
6+ types :
7+ - completed
8+
9+ jobs :
10+ deploy :
11+ if : ${{ github.event.workflow_run.conclusion == 'success' }}
12+ runs-on : ubuntu-latest
13+
14+ steps :
15+ - name : Check out repository
16+ uses : actions/checkout@v2
17+
18+ - name : Deploy to VPS
19+ uses : appleboy/ssh-action@v0.1.3
20+ with :
21+ host : ${{ secrets.SSH_IP_HOST }}
22+ username : ${{ secrets.SSH_USERNAME }}
23+ key : ${{ secrets.SSH_PRIVATE_KEY }}
24+ port : 22
25+ script : |
26+ echo "${{ secrets.DOCKERHUB_TOKEN }}" | docker login -u "${{ secrets.DOCKERHUB_USERNAME }}" --password-stdin
27+ docker stop user || true
28+ docker rm user || true
29+ docker rmi ${{ secrets.DOCKERHUB_REPOSITORY }}:latest || true
30+ docker pull ${{ secrets.DOCKERHUB_REPOSITORY }}:latest
31+ docker run -d --network host --name user \
32+ -e SPRING_PROFILES_ACTIVE=prod \
33+ -e eureka.environment=prod \
34+ -e AUTH_BASE_URL=${{ secrets.AUTH_BASE_URL }} \
35+ -e AUTH_RESQUEUE_CLIENT_SECRET=${{ secrets.AUTH_RESQUEUE_CLIENT_SECRET }} \
36+ -e KC_BASE_ISSUER_URL=${{ secrets.KC_BASE_ISSUER_URL }} \
37+ -e EUREKA_URL=${{ secrets.EUREKA_URL }} \
38+ ${{ secrets.DOCKERHUB_REPOSITORY }}:latest
Original file line number Diff line number Diff line change 1+ name : Docker Image CI
2+
3+ on :
4+ push :
5+ tags :
6+ - ' v*'
7+
8+ jobs :
9+ build :
10+ runs-on : ubuntu-latest
11+
12+ steps :
13+ - name : Checkout code
14+ uses : actions/checkout@v3
15+ with :
16+ fetch-depth : 0
17+
18+ - name : Verify tag is from main branch
19+ run : |
20+ git fetch origin main
21+ if [ "$(git rev-list -n 1 origin/main)" != "$(git rev-list -n 1 $GITHUB_SHA)" ]; then
22+ echo "Tag was not created from the main branch. Exiting."
23+ exit 1
24+ fi
25+
26+ - name : Log in to Docker Hub
27+ run : echo "${{ secrets.DOCKERHUB_TOKEN }}" | docker login -u "${{ secrets.DOCKERHUB_USERNAME }}" --password-stdin
28+
29+ - name : Build the Docker image
30+ run : docker build -t ${{ secrets.DOCKERHUB_REPOSITORY }}:latest .
31+
32+ - name : Push the Docker image
33+ run : |
34+ docker tag ${{ secrets.DOCKERHUB_REPOSITORY }}:latest ${{ secrets.DOCKERHUB_REPOSITORY }}:${{ github.ref_name }}
35+ docker push ${{ secrets.DOCKERHUB_REPOSITORY }}:latest
36+ docker push ${{ secrets.DOCKERHUB_REPOSITORY }}:${{ github.ref_name }}
Original file line number Diff line number Diff line change 1+ FROM maven:3-amazoncorretto-21 AS build
2+
3+ WORKDIR /app
4+
5+ COPY pom.xml .
6+
7+ RUN mvn dependency:resolve
8+
9+ COPY src ./src
10+
11+ RUN mvn clean package -DskipTests
12+
13+ FROM amazoncorretto:21 AS runner
14+
15+ WORKDIR /app
16+
17+ COPY --from=build /app/target/*.jar app.jar
18+
19+ EXPOSE 9001
20+
21+ CMD ["java" , "-jar" , "app.jar" ]
You can’t perform that action at this time.
0 commit comments