wait-for-it을 사용하여 Docker-Compose의 한 서비스가 Alpine Linux 배포를 기반으로 한 이미지를 사용하여 다른 서비스를 기다리는 데 관심이 있습니다. 나는 wait-for-it
저장소를 복제하고 거기에 추가하면 Dockerfile
다음 그러나Alpine Linux에서 bash 스크립트를 사용하는 방법은 무엇입니까?
는 다음
FROM alpine
RUN apk --update add bash
COPY wait-for-it.sh wait-for-it.sh
CMD ["./wait-for-it.sh", "www.google.com:80"]
가 나는
docker run waitforit
다음
docker build --tag waitforit .
를 사용하여 구축,하지만 난이 오류 메시지가 얻을 :
timeout: can't execute '15': No such file or directory
wait-for-it.sh: timeout occurred after waiting 15 seconds for www.google.com:80
을
대조적으로 이것은 내 (우분투 16.04 LTS) 컴퓨터에서이 명령을 실행할 때 표시됩니다.
wait-for-it.sh: waiting 15 seconds for www.google.com:80
wait-for-it.sh: www.google.com:80 is available after 0 seconds
내 우분투 로컬 컴퓨터에 있기 때문에 bash 스크립트가 Alpine 컨테이너에서 작동하지 않는 것 같습니다. 이 문제를 어떻게 해결할 수 있습니까?
wait-for-it.sh의 실행 파일은 무엇입니까? 첫 번째 줄을보십시오. #!/bin/bash 또는 sh? – Robert
쉘 스크립트와 같은 오류가 있습니다. 스크립트를 붙이십시오. – n2o