Inflearn brand logo image

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

작성자 없음

작성자 정보가 삭제된 글입니다.

시스템엔지니어가 알려주는 리눅스 실전편 Bash Shell Script

2-0-2. MAC (m칩), Linux, Windows 모든 사용자를 위한 실습환경 (Docker)

docker 컨테이너로 가상환경 구축 시 init.sh 관련 에러 로그

작성

·

97

0

https://github.com/bashbomb/vws-docker-environment 이 링크에서 안내받은 대로 docker desktop 설치 후 git으로 폴더 clone 후 해당 폴더 경로에서 docker-compose build한 다음 docker-compose up -d 했을 때 컨테이너들 상태가 전부 exited여서 로그를 확인해보니,
[FATAL tini (7)] exec /init.sh failed: No such file or directory 라고 찍힙니다. SHELL 폴더 아래 init.sh 파일이 있고 이것을 /init.sh으로 COPY해서 사용하던데, 혹시 에러 로그가 저렇게 찍히는 원인을 알 수 있을까요?

답변 2

0

강민구님의 프로필 이미지
강민구
지식공유자

안녕하세요.

인프라 AI 인턴의 답변처럼 파일 COPY가 제대로 되지 않은 것이 문제의 원인인 것 같습니다.

제 환경에서 재현이 안되기 때문에 어떤 환경에서 빌드를 실행 중인지 확인을 해주셨으면 합니다. (windows, linux, macos 등)

윈도우즈나 리눅스 환경이라면 우선 아래 방법으로 시도를 해 볼 수 있을 것 같습니다.

  • 줄바꿈 문자열 등이 달라 인식이 안될 수가 있으니 CRLF를 LF로 변경하고 다시 빌드해보세요.

    • 윈도우즈라면 WSL이나 Git Bash 등에서 실행 하세요.

dos2unix SHELL/init.sh
chmod +x SHELL/init.sh
  • 빌드한 이미지를 삭제하고 빌드 캐시를 사용하지 않고 빌드

    • 윈도우즈라면 WSL이나 Git Bash 등에서 실행 하세요.

docker-compose down -v --remove-orphans
docker-compose build --no-cache

이렇게 시도해보시고 안되면 다시 질문 부탁드립니다.

0

안녕하세요, 인프런 AI 인턴입니다.

Yoonseop Shin님, Docker 컨테이너 실행 시 발생하는 에러에 대해 설명드리겠습니다. 해당 에러 메시지는 tini라는 프로세스 관리자가 /init.sh 스크립트를 실행하려고 했을 때 해당 파일을 찾을 수 없어서 발생합니다. 일반적으로 이는 Dockerfile에서 파일 경로를 잘못 지정했거나, COPY 혹은 ADD 명령이 제대로 동작하지 않았을 때 나타납니다.

  1. 경로 확인: Dockerfile에서 COPY 명령어가 Docker 이미지의 올바른 경로에 init.sh 파일을 복사하고 있는지 확인하시기 바랍니다. 예를 들어:

    COPY ./SHELL/init.sh /init.sh
    

이런 식으로 init.sh 파일이 Docker 컨테이너의 루트 경로에 복사되어야 합니다.

  1. 파일 존재 여부: 로컬 경로에 SHELL/init.sh 파일이 실제로 존재하는지도 확인하십시오. 로컬에서 해당 파일이 존재하지 않으면 Docker 이미지에 복사되지 않습니다.

  2. 실행 권한 설정: init.sh 파일에 실행 권한이 있는지도 확인해야 합니다. 이는 파일이 실행될 수 있도록 Docker 이미지를 빌드하기 전에 설정해줘야 합니다. 예를 들어:

    chmod +x SHELL/init.sh
    
  3. Docker 이미지 다시 빌드: 위 사항들을 확인 및 수정 후에 docker-compose build 명령어를 통해 이미지를 다시 빌드하여 실행해 보시기 바랍니다.

이와 관련된 기존의 유사한 문제 해결 사례로는 아래 링크를 참고할 수 있습니다:

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

작성자 없음

작성자 정보가 삭제된 글입니다.

질문하기