原因
這個(gè)錯(cuò)誤提示表明eclipse-mosquitto鏡像生成的容器內(nèi)部找不到 /bin/bash
這個(gè)命令,可能是由于在容器鏡像中沒有安裝 Bash 或在執(zhí)行腳本時(shí)路徑不正確導(dǎo)致的。如果你使用的是官方的 eclipse-mosquitto 鏡像,那么這個(gè)問題一般不會(huì)出現(xiàn)。
如果你在 Dockerfile 中指定了自己的 ENTRYPOINT 或 CMD,那么需要確保在腳本中使用了正確的路徑。如果你在 docker run 命令中使用了 --entrypoint
參數(shù)來覆蓋默認(rèn)的 ENTRYPOINT,那么也需要確保指定了正確的路徑。
另外,如果你在 docker run 命令中使用了 -i
和 -t
參數(shù),并且指定了 /bin/bash
作為 ENTRYPOINT,那么在進(jìn)入容器后輸入命令時(shí)需要使用 Bash。如果你直接輸入其他命令可能會(huì)導(dǎo)致找不到命令的錯(cuò)誤。
解決辦法
我的docker run原來是這樣的:文章來源:http://www.zghlxwxcb.cn/news/detail-699288.html
docker run \
-p 1883:1883 \
-v ${DEPLOY_PATH}/mount/data:/mosquitto/data/ \
-v ${DEPLOY_PATH}/mount/log/mosquitto.log:/mosquitto/log/mosquitto.log \
--name=${CONTAINER_NAME} \
-d -i -t --restart=always \
${REPOSITORY}:${REP_TAG} \
/bin/bash
我把最后/bin/bash
去掉就好了文章來源地址http://www.zghlxwxcb.cn/news/detail-699288.html
docker run \
-p 1883:1883 \
-v ${DEPLOY_PATH}/mount/data:/mosquitto/data/ \
-v ${DEPLOY_PATH}/mount/log/mosquitto.log:/mosquitto/log/mosquitto.log \
--name=${CONTAINER_NAME} \
-d -i -t --restart=always \
${REPOSITORY}:${REP_TAG}
到了這里,關(guān)于docker容器日志報(bào)錯(cuò):/docker-entrypoint.sh: exec: line 10: /bin/bash: not found(去掉/bin/bash)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!