Fixed SSH issues #15
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Deploy Docker Compose App to Private Server | |
on: | |
push: | |
branches: | |
- develop | |
jobs: | |
deploy: | |
runs-on: ubuntu-latest | |
environment: Production | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v3 | |
- name: Set up SSH | |
run: | | |
echo "${{ secrets.SSH_PRIVATE_KEY }}" > private_key.pem | |
chmod 600 private_key.pem | |
eval $(ssh-agent -s) | |
ssh-add private_key.pem | |
rm private_key.pem | |
- name: Test SSH connection | |
run: | | |
ssh -o StrictHostKeyChecking=no ${{ secrets.SSH_USER }}@${{ secrets.SSH_HOST }} "echo 'SSH connection successful!'" | |
- name: Copy files to the server | |
run: | | |
mkdir /tmp/c218/ | |
rsync -avz -e "ssh -o StrictHostKeyChecking=no -p ${{ secrets.SSH_PORT }}" \ | |
--exclude '.git' --exclude '.github' \ | |
./ ${{ secrets.SSH_USER }}@${{ secrets.SSH_HOST }}:/tmp/c218/ | |
- name: Environment variables | |
run: | | |
echo "DBName=${{secrets.DBName}}" >> $GITHUB_ENV | |
echo "Host=${{secrets.Host}}" >> $GITHUB_ENV | |
echo "Password=${{secrets.Password}}" >> $GITHUB_ENV | |
echo "User=${{secrets.User}}" >> $GITHUB_ENV | |
echo "SecurityKey=${{secrets.SecurityKey}}" >> $GITHUB_ENV | |
- name: Build and restart Docker Compose | |
run: | | |
ssh -o StrictHostKeyChecking=no -p ${{ secrets.SSH_PORT }} ${{ secrets.SSH_USER }}@${{ secrets.SSH_HOST }} " | |
cd /tmp/c218/ && | |
docker-compose down && | |
docker-compose up -d --build && | |
docker image prune -f | |
" | |
- name: Clean up application files | |
run: | | |
ssh -o StrictHostKeyChecking=no -p ${{ secrets.SSH_PORT }} ${{ secrets.SSH_USER }}@${{ secrets.SSH_HOST }} " | |
rm -rf /tmp/c218/* | |
rm /tmp/c218 | |
" |