我必须接连提交5份工作。
这是我的命令 -
INPUT - 1000 1001 1002 1003 1004
docker run -d --net ${NETWORK} ${IMAGE}:${TAG} populate_data --for-year {INPUT}
我基本上需要为每个输入运行 docker 命令 -
docker run -d --net ${NETWORK} ${IMAGE}:${TAG} populate_data --for-data 1000 ||
docker run -d --net ${NETWORK} ${IMAGE}:${TAG} populate_data --for-data 1001 ||
docker run -d --net ${NETWORK} ${IMAGE}:${TAG} populate_data --for-data 1002 ||
docker run -d --net ${NETWORK} ${IMAGE}:${TAG} populate_data --for-data 1003 ||
docker run -d --net ${NETWORK} ${IMAGE}:${TAG} populate_data --for-data 1004
以上是我的解决方案,正在思考是否有更好的办法。
答案1
Bodo 在评论中建议的命令运行 5 个命令,一个接一个:
for INPUT in 1000 1001 1002 1003 1004; do docker run -d --net "${NETWORK}" "${IMAGE}":"${TAG}" populate_data --for-year "${INPUT}"; done
或者,展开:
for INPUT in 1000 1001 1002 1003 1004
do
docker run -d --net "${NETWORK}" "${IMAGE}":"${TAG}" populate_data --for-year "${INPUT}"
done
当然,这假设您已经为 、 和 设定了合理的$NETWORK
值$IMAGE
。$TAG
上面的循环将按顺序运行这些命令:
docker run -d --net "${NETWORK}" "${IMAGE}":"${TAG}" populate_data --for-year 1000
docker run -d --net "${NETWORK}" "${IMAGE}":"${TAG}" populate_data --for-year 1001
docker run -d --net "${NETWORK}" "${IMAGE}":"${TAG}" populate_data --for-year 1002
docker run -d --net "${NETWORK}" "${IMAGE}":"${TAG}" populate_data --for-year 1003
docker run -d --net "${NETWORK}" "${IMAGE}":"${TAG}" populate_data --for-year 1004
如果您想并行运行命令,可以&
在命令末尾添加 a docker
。