name: Deploy to Server (Docker) on: push: branches: - main jobs: deploy: runs-on: ubuntu-latest steps: - name: Checkout code uses: actions/checkout@v3 - name: Build Docker image run: docker build -t registry.gocommunity.ru:5000/workshop . - name: List Docker image run: docker images - name: Login to registry hub. run: docker login -u podman -p PodMan25! registry.gocommunity.ru:5000 - name: Push Docker image to registry run: docker push registry.gocommunity.ru:5000/workshop:latest - name: Push Docker image to registry run: echo "Hello there!!" - name: Deploy to server (using docker run or docker-compose) uses: appleboy/ssh-action@master with: host: ${{ secrets.SERVER_HOST }} username: ${{ secrets.SERVER_USERNAME }} key: ${{ secrets.SERVER_PRIVATE_KEY }} script: | docker pull /workshop:latest docker stop workshop-container || true # Stop existing container if it exists docker rm workshop-container || true # Remove existing container if it exists docker run -d -p 8080:80 --name workshop-container /workshop:latest