1. [error] ssh: handshake failed: ssh: unable to authenticate, attempted methods [none publickey], no supported methods remain
이 과정에서 CI/CD 파이프라인이 실패했다. secrets 환경변수 값에는 문제가 없었다.
aws ec2는 위에서 확인할 수 있듯 ubuntu 환경이고, ~/.ssh/authorized_key 에 명시된 key는 SHA-1 로 서명된 ssh-rsa 키였다.
따라서 리눅스 SSH 설정 파일인 /etc/ssh/sshd_config 파일을 열어서 ssh-rsa를 지원할 수 있도록 추가적으로 입력했다.
<해결 방법>
1) ec2에 접속(SSH 사용)
2) sshd_config 파일을 수정한다.
$ cd /etc/ssh
$ sudo vi sshd_config
3) sshd_conofig에 PubkeyAcceptedKeyTypes=+ssh-rsa 추가
4) ssh 시스템 서비스 재실행
$ sudo systemctl restart ssh
해결완료.
2. err: Error response from daemon: No such image: ***/~~
Docker Compose 실행과 관련한 문제가 발생했다
1) no configuration file provided: not found
- Docker Compose가 실행될 때 docker-compose.yml 을 찾지 못해서 발생한 오류이다.
- docker Compose 명령어를 실행하는 디렉토리에 docker-compose.yml 파일이 없었다.
2) Error response from daemon: No such image: ***/~~
- Docker hub에 푸시된 Docker 이미지를 Ec2에서 Pull 하려했으나, 해당 이미지가 존재하지 않는다는 에러
- Docker 이미지가 Hub에 업로드되지 않고 있었다.
<해결 방법>
1, 2) 우선 SSH로 EC2에 접속해서 Docker Compose 설정 파일이 존재하는지 확인했다.
$ ls -l /home/ubuntu/Journey/docker-compose.yml
확인해보니, 찾을 수 없었고.. 워크플로우에서 docker-compose.yml을 업로드 하기로 했다.
위의 코드를 추가했고, docker yaml 파일을 업로드 했다.
근데
err: read /home/***/Journey/docker-compose.yml: is a directory
이 오류가 발생했다.. target을 위와 같이 적으니 docker-compose.yml 이름으로 된 디렉토리 파일이 생기면서 docker yaml 파일을 제대로 인식하지 못했다. 따라서 target에서 docker-compose.yml 을 지웠다.
# docker-compose.yml 업로드 단계 추가
- name: Upload docker-compose.yml to EC2
uses: appleboy/scp-action@v0.1.3
with:
host: ${{ secrets.EC2_HOST }}
username: ${{ secrets.EC2_USER }}
key: ${{ secrets.EC2_SSH_KEY }}
source: ./docker-compose.yml
target: /home/ubuntu/Journey
3)
Docker Hub에 들어가보니 Pull이 안되어 있었다.
EC2에서 직접 Pull 를 하기로 했고, 아래의 명령어를 입력했다.
$ docker pull ashtonsw/mydockerrepo:latest
permission denied while trying to connect to the Docker daemon socket ~~
~~
connect: permission denied
메세지를 만났고, Docker 그룹에 현재 사용자를 Docker 권한이 생기도록 추가했다.
exit
ssh -i /path/to/key.pem ubuntu@<EC2_PUBLIC_IP>
재접속하면 끝!!
하나하나 해결하는 맛이 너무너무 재밌었다!!
오늘도 성장했다(?)
'지식 나눔' 카테고리의 다른 글
| Cloudflare Worker 기반 GitHub → Discord 알림 시스템 구축 (0) | 2025.11.19 |
|---|---|
| [Vue] 오픈소스 이슈 제보 후기 (3) | 2025.07.24 |
| [Spring Security 6 + AWS] HTTP ERROR 403 해결 (Order Annotation와 securityMatcher 사용) (1) | 2025.01.25 |
| [Github Actions & Docker] error username and password required 해결 (0) | 2025.01.20 |
| Postman을 활용한 카카오톡 로그인 테스트 - Oauth2(Bad client credentials) (4) | 2024.01.28 |