인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

KYUNG TAE BAE님의 프로필 이미지
KYUNG TAE BAE

작성한 질문수

Jenkins를 이용한 CI/CD Pipeline 구축

실습4) Docker Container에 배포하기 ②

Exec exit status not zero. Status [125], unstable 오류

작성

·

1.6K

1

도원님 안녕하세요. 질문이 있어서 글 남깁니다.

 

강의를 보고 젠킨스에서 빌드 후 조치에 위와 같이 명령어를 입력하니 아래와 같이 오류가 발생합니다.

 

쉘에서 명령어(docker run -p 8080:8080 --name mytomcat cicd-project:latest)를 입력하면 빌드가 되고 웹페이지에 접속이됩니다.

하지만 젠킨스에서 빌드를 하면 ERROR: Exception when publishing, exception message [Exec exit status not zero. Status [125]]... 오류가 발생하였고 웹페이지에 접속이 되지 않았습니다.

혹시 의심가는 부분이 있는지 알려주시면 제가 다시 해보겠습니다.

매번 감사드립니다.^^

답변 3

2

안녕하세요, 인프런 AI 인턴입니다.
도원님, 도커 실행과 관련된 문제로 보입니다. 오류 코드 125는 도커 컨테이너를 실행하는데 문제가 있음을 나타냅니다. 이는 다양한 원인으로 발생할 수 있는데, 예를 들어 컨테이너 이름이 이미 사용 중일 때, 네트워크 포트 충돌, 이미지가 제대로 없거나 권한 문제 등이 있습니다.

오류 메시지를 바탕으로 몇 가지 확인해볼 수 있는 점은 다음과 같습니다.

  1. docker ps -a를 통해 ‘mytomcat’ 이라는 이름의 컨테이너가 이미 실행 중이거나 종료된 상태인지 확인하세요. 만약 있다면, 기존 컨테이너를 삭제하거나 이름을 변경해야 합니다.

  2. 명령어에 사용된 포트 번호가 잘못되었거나 충돌이 발생하지는 않았는지 확인하세요. 젠킨스에서는 8080:8080으로 포트가 설정되어있고, 쉘에서는 8089:8080으로 설정되어 있습니다. 포트 설정을 일치시키거나 사용중인 포트가 아닌지 확인이 필요합니다.

  3. 젠킨스가 도커 명령어를 실행할 권한을 가지고 있는지 확인하세요. Jenkins 사용자가 도커 그룹에 속해 있는지, 또는 충분한 권한을 가지고 있는지 검토가 필요합니다.

그리고 다음은 도커를 Linux에서 사용할 때 비루트 사용자로 관리하는 방법에 대한 정보입니다. 참고하시어 권한 문제가 있는지 확인해보시면 도움이 될 것입니다:
- 도커 설치 및 비루트(non-root) 사용자 구성: Get Docker
- 비루트 사용자로 도커 관리: Manage Docker as a non-root-user

마지막으로 젠킨스에 설정된 환경변수나 경로 설정이 올바른지 검증해보는 것도 좋을 것 같습니다. 문제 해결에 도움이 되길 바랍니다.

1

Dowon Lee님의 프로필 이미지
Dowon Lee
지식공유자

안녕하세요, 이도원입니다.

젠킨스에서 작성해 주신 스크립트를 실행하기 위해 서버를 등록하게 됩니다.

올려주신 내용만으로 원인을 생각해 보면, 해당 서버에 접속이 안되는게 아닌 가 싶습니다. 젠킨스 설정에서 서버 등록 시 사용한 인증 정보등이 젠킨스의 아이템(현재 빌드 하려고 하는)에서도 정상 로그인 되는지 확인해 봐야 할 것 같습니다. 오류 메시지에서는 SSH 접속 시도하려다가 오류가 발생하네요. 추가로 해당 서버에 SSH 접속이 가능한지도 같이 확인해 보시기 바랍니다.

감사합니다.

0

...커맨드 확인 잘 부탁드립니다.

수업노트 자료랑 강의화면이랑 다르네요

KYUNG TAE BAE님의 프로필 이미지
KYUNG TAE BAE

작성한 질문수

질문하기