AWS/ElasticBeanstalk

AWS Elastic Beanstalk - (17)

알면 알 수록 재밌다! 2023. 3. 5. 07:00

github action을 하는데

에서 했던 ssh ec2접속에서 에러가 나타났다.

 

 

2023/02/27 11:40:45 dial tcp ***:22: i/o timeout 이런 에러였다.

 

- name: SSH Commands
   uses: appleboy/ssh-action@v0.1.6
   with: host: ${{ secrets.AWS_SSH_HOST_DEV }}
     username: ${{ secrets.AWS_SSH_USERNAME }}
     key: ${{ secrets.AWS_SSH_KEY }}
     script_stop: true
     script: |
         cd /
         cd /etc/nginx
         sudo sed -i nginx.conf -e '/http {/a\'$'\n'' client_max_body_size 0;'
          sudo systemctl reload nginx

 

기존에 이렇게 작업을 했었는데 

2023/02/27 11:40:45 dial tcp ***:22: i/o timeout

이런 에러가 계속해서 났다.

 

https://github.com/appleboy/ssh-action/issues/53

 

위 글을 살펴보니 

port를 지정하라고 한다.

 

- name: SSH Commands
    uses: appleboy/ssh-action@v0.1.6
    with:
        host: ${{ secrets.AWS_SSH_HOST_RELEASE }}
        username: ${{ secrets.AWS_SSH_USERNAME }}
        key: ${{ secrets.AWS_SSH_KEY }}
        port: ${{ secrets.REMOTE_SSH_PORT }}
        script: |
                cd /
                cd /etc/nginx
                sudo sed -i nginx.conf -e '/http {/a\'$'\n'' client_max_body_size 0;'
                sudo systemctl reload nginx

위처럼 port: ${{ secrets.REMOTE_SSH_PORT }} 를 추가하고 script_stop: true를 삭제했다.

물론 REMOTE_SSH_PORT는 github secrets에 추가했다.

 

그랬더니 여전히 안됐다 ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ

 


해결방법

uses의 버전이 appleboy/ssh-action@v0.1.6이었던 것을 v0.1.7로 버전업 했더니 되었다.

6버전이 불안정한 버전이었나 보다.

 

 


참고

https://github.com/appleboy/ssh-action