簡體   English   中英

bash 腳本 - 找不到“docker run -it my_image bash”命令

[英]bash script - "docker run -it my_image bash" command not found

我們有一個 docker 鏡像列表,我們正在嘗試使用以下 bash 腳本查看每個鏡像中安裝了哪個版本的 node/java/mongo..

#!/bin/bash
version=""
file='images.txt'
while read line; do
        sudo docker pull $line 
        sudo docker run $line bash
        version=$(node -v)
        exit
        $version >> "version.txt"
        sudo docker image rm $line
done < $file

但是我們在“docker run”行上有一個錯誤,它說“找不到命令”docker pull 命令工作正常我們還注意到 while 循環繼續而不等待第一個 docker pull 完成,當我們執行“docker pull”運行”命令沒有腳本它工作正常並進入圖像的外殼。

我們將不勝感激任何建議:)

我猜你可能是說

#!/bin/bash
while read -r line; do
        sudo docker pull "$line" 
        sudo docker run -it --rm "$line" node -v
done <images.txt >version.txt

......但是代碼不能做你想做的事情是告訴我們你真正想做的事情的可怕方式。 這將在每個容器內運行node -v ,其中-it選項對於在標准輸出上獲取輸出至關重要,而--rm負責處理(我猜)你用單獨的rm做什么。 這顯然仍然取決於輸入文件中的確切內容。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM