我有興趣使用wait-for-it在Docker-Compose中使用基於Alpine Linux發行版的圖像來等待另一個服務。如何在Alpine Linux中使用bash腳本?
但是,如果我克隆wait-for-it
庫,並添加到它下面Dockerfile
,
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 build --tag waitforit .
其次docker run 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
相比之下,這是我在我的(Ubuntu 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腳本不能在我的Ubuntu本地機器上的Alpine容器中工作。我怎樣才能解決這個問題?
wait-for-it.sh的可執行文件是什麼?看到它的第一行。 #!/ bin/bash或sh? – Robert
看起來像你的shell腳本包含錯誤。請粘貼腳本 – n2o