46 lines
1.5 KiB
YAML
46 lines
1.5 KiB
YAML
name: Gitea CI/CD
|
|
|
|
on: [push]
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
- name: Checkout code
|
|
uses: actions/checkout@v2
|
|
|
|
- name: Login to Docker registry
|
|
uses: docker/login-action@v2
|
|
with:
|
|
username: ${{ secrets.DOCKER_USERNAME }}
|
|
password: ${{ secrets.DOCKER_PASSWORD }}
|
|
registry: https://registry.rokoh.com
|
|
|
|
- name: Build Docker image
|
|
run: docker build . -t trymymenu:latest -f trymymenu/Dockerfile
|
|
|
|
- name: Tag Docker image
|
|
run: docker tag trymymenu:latest registry.rokoh.com/trymymenu:latest
|
|
|
|
- name: Push Docker image to registry
|
|
run: docker push registry.rokoh.com/trymymenu:latest
|
|
|
|
- name: SSH Deploy
|
|
uses: appleboy/ssh-action@v1.0.3
|
|
with:
|
|
host: 10.1.1.90
|
|
username: ${{ secrets.SERVER_USERNAME }}
|
|
password: ${{ secrets.SERVER_PASSWORD }}
|
|
script: |
|
|
if docker ps -a --format '{{.Names}}' | grep -q trymymenu; then
|
|
docker stop trymymenu || true
|
|
docker rm trymymenu || true
|
|
docker image rm trymymenu:latest
|
|
fi
|
|
docker login registry.rokoh.com -u ${{ secrets.DOCKER_USERNAME }} -p ${{ secrets.DOCKER_PASSWORD }} && docker image pull registry.rokoh.com/trymymenu:latest
|
|
docker run -d -p 5000:80 --restart=always --name trymymenu registry.rokoh.com/trymymenu
|
|
docker image prune -f
|
|
|
|
- name: Prune Docker resources
|
|
run: docker system prune -af --volumes |