Linux
用於啟動 Docker 容器的 Bash 腳本
該腳本有效:
#!/bin/bash for i in {1..10} do echo “yes $i” done
但是當嘗試啟動多個 Docker 容器時,它只會啟動第一個容器並退出:
docker_run.sh
#!/bin/bash for i in {1..10} do exec docker run —name docker-nginx$i -P -d nginx sleep 3 done
添加 是為了
sleep 3
給它時間。不確定是否重要。當然,腳本必須以sudo
權限執行。
要執行許多 docker 機器,您的腳本應該是這樣的:
#!/bin/bash for i in {1..10} do docker run —name docker-nginx$i -P -d nginx sleep 3 done
exec
在這種情況下,您不應將目前程序(您的腳本)exec
替換為執行其參數 (docker ...
) 所產生的程序。這就是為什麼您的腳本永遠不會超過第一次迭代的原因。