도커 이미지 푸시까지는 성공하나, ssh에서 fail이 나옵니다.
강의 및 노션에 있는 부분을 최대한 응용해서, next.js app을 생성중입니다.
ecr 저장소에서 도커 이미지가 확실히 푸시되었지만, ssh접속에서 에러가 발생했습니다.
======CMD======
docker stop instagram-server || true
docker rm instagram-server || true
docker pull 767398114270.dkr.ecr.ap-northeast-2.amazonaws.com/instagram-server:latest
docker run -d --name instagram-server -p 3000:3000 767398114270.dkr.ecr.ap-northeast-2.amazonaws.com/instagram-server:latest
======END======
err: permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Post "http://%2Fvar%2Frun%2Fdocker.sock/v1.44/containers/instagram-server/stop": dial unix /var/run/docker.sock: connect: permission denied
err: permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Delete "http://%2Fvar%2Frun%2Fdocker.sock/v1.44/containers/instagram-server": dial unix /var/run/docker.sock: connect: permission denied
err: permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Post "http://%2Fvar%2Frun%2Fdocker.sock/v1.44/images/create?fromImage=767398114270.dkr.ecr.ap-northeast-2.amazonaws.com%2Finstagram-server&tag=latest": dial unix /var/run/docker.sock: connect: permission denied
2024/08/13 11:11:21 Process exited with status 1그래서 workflow를 수정했는데, 밑에 처럼 진행하니 정상처리가 되었습니다.
- name: SSH로 EC2에 접속하기
uses: appleboy/ssh-action@v1.0.3
with:
host: ${{ secrets.EC2_HOST }} # 인스턴스의 퍼블릭 IP 또는 DNS 이름
username: ${{ secrets.EC2_USERNAME }} # 일반적으로 'ubuntu' 또는 'ec2-user'
key: ${{ secrets.EC2_PRIVATE_KEY }} # SSH 개인 키
script_stop: true
script: |
aws ecr get-login-password --region ap-northeast-2 | sudo docker login --username AWS --password-stdin ${{ steps.login-ecr.outputs.registry }}
sudo docker stop instagram-server || true
sudo docker rm instagram-server || true
sudo docker pull ${{ steps.login-ecr.outputs.registry }}/instagram-server:latest
sudo docker run -d --name instagram-server -p 3000:3000 ${{ steps.login-ecr.outputs.registry }}/instagram-server:latest혹시 제가 실수하거나 놓친 부분이있을까요??
답변 1
0
안녕하세요 두뇌풀가동님!
Docker를 설치하는 과정 또는 프로젝트를 내려받을 때
sudo 권한이 필요하게끔 구성이 됐을 수도 있습니다!
이 때문에 sudo를 안 붙일 경우 권한 문제가 발생했던 것 같네요!
https://github.com/occidere/TIL/issues/116
위 링크도 같이 참고 한 번 해보시면 좋을 것 같습니다~!!
지금 현재 sudo를 붙여서 구성하신 명령어도 크게 문제가 되는 부분은 없으니
작성해주신 코드로 실행시키셔도 충분히 좋은 방법입니다:D
이 외로 이해 안 되시는 점이나 궁금하신 점 있으시면 또 질문 남겨주세요~
무중단 배포
0
57
2
workflows/deploy.yml 궁금증
0
52
2
.git-credentials 파일이 없이 배포가 성공한 이유가 궁금
0
57
1
(해결 - 정보공유) /home/runner/work/_temp/6be6e~0.sh: line 1: ./gradlew: Permission denied 오류
1
63
2
(확인 완료) git config --global creadential.helper store 후에도 비밀번호 물어보는 현상
1
71
2
질문_ 강의 순서 및 그외
0
70
2
섹션 4 - Docker + 백엔드(Spring Boot)
0
63
2
deploy.yml작성후 원격에 push불가
0
63
2
CodeDeploy 사용시 registration 요구
0
106
3
스프링 종료 명령어
0
68
2
RAM & 스왑메모리 폭증하는 문제
0
102
2
섹션 4, 5와 6, 7은 유사한가요?
0
66
1
code deploy 배포입니다.
0
98
3
사용자 삭제가 안되는 이유
0
88
2
이미지 pull중 no basic auth credentials 문제입니다.
0
113
2
Docker Compose파일을 작성했을때 CI CD와의 연동
0
96
2
보안그룹 생성 오류
0
84
3
AWS 5월에 탈퇴해서 그러는데....
0
81
1
배포 오류
0
80
2
node.js 설치시 에러
0
149
2
appspec.yml, 스크립트 파일 수정요청
0
82
2
appleboy/ssh-action stop_script 대체
1
181
2
Vue.js 파일 배포
0
61
2
aws를완강하고 ci/cd로 넘어왔습니다.
0
85
1





