" Park 기술 블로그 "
# 카테고리
# 도구
[Docker] exec 명령어의 /bin/bash 에러 시 해결 w/ TMI
2023-07-08 21:51:18

 최근 이 smparkworld.com 블로그에 대해서 대격변이 있었는데, httpd + php로 되어 있었던 기존 서버 구성에서 nginx + spring으로 구성하고 프로젝트 자체를 kotlin 언어로 된 spring-boot로 마이그레이션 했기 때문이다.

(필자는 Android 개발자이기에 php보다 java or kotlin 언어가 오조오억배 생산성이 있어서..)

 

그리고 http로만 호스팅하던 블로그를 https로 변경하고 editor 변경, 가벼운 FE 변경 등등 추가 변경사항도 많이 진행했다. 그리고 원활한 배포를 위해 jenkins + docker를 사용한 CI/CD를 구축했고 결과적으로 배포 시에는 jenkins의 특정 pipeline를 빌드할 때 버전 입력하고 Github branch를 선택해주면 수 분 내에 알아서 deploy 되도록 아래와 같이 작업도 진행했다.

 

위와 같이 빌드된 Docker container에 접속하려고 시도하던 중 예상치 못한 이슈가 있었다. 바로 docker exec -it {container name} /bin/bash 명령어가 아래와 같이 실패하는 것이었다.

OCI runtime exec failed: exec failed: unable to start container process: exec: "/bin/bash": stat /bin/bash: no such file or directory: unknown

그래서 먼 일인가.. 싶어서 구글링했더니 Docker Image가 이 Alpine 기반이라면 /bin/bash를 지원하지 않을 수 있기 때문이었다.

아래와 같이 /bin/sh를 사용하면 정상적으로 동작되는 걸 확인할 수 있었다.

$ sudo docker exec -it {container name or id} /bin/sh
0
# 댓글 + 새 댓글 작성
# 새 댓글 작성
댓글 암호는 댓글 삭제 시 필요합니다.
# 님에게 답변 작성
대댓글 암호는 댓글 삭제 시 필요합니다.
# 님의 댓글 삭제
댓글 작성 시 입력했던 암호를 입력해주세요.
아직 댓글이 없습니다