name: Build and Deploy on: push: branches: - main jobs: deploy: runs-on: docker steps: - name: Checkout uses: actions/checkout@v4 - name: Set up Docker context run: | mkdir -p ~/.ssh echo "${{ secrets.SSH_PRIVATE_KEY }}" > ~/.ssh/id_rsa chmod 600 ~/.ssh/id_rsa ssh-keyscan -H 194.163.164.113 >> ~/.ssh/known_hosts - name: Deploy to server env: APP_NAME: ${{ vars.APP_NAME }} DOMAIN: ${{ vars.DOMAIN }} run: | # Variablen setzen SERVER="root@194.163.164.113" DEPLOY_PATH="/opt/apps/${APP_NAME}" # Verzeichnis erstellen ssh $SERVER "mkdir -p ${DEPLOY_PATH}" # Dateien kopieren scp docker-compose.yml $SERVER:${DEPLOY_PATH}/ scp Dockerfile $SERVER:${DEPLOY_PATH}/ 2>/dev/null || true # Anwendung deployen ssh $SERVER "cd ${DEPLOY_PATH} && docker compose pull && docker compose up -d --build" echo "Deployed to https://${DOMAIN}"