diff --git a/build/dev/run_locally.sh b/build/dev/run_locally.sh index 8875861718..383cbb75c1 100755 --- a/build/dev/run_locally.sh +++ b/build/dev/run_locally.sh @@ -105,10 +105,13 @@ if [[ "$DC_COMMAND" == up* ]]; then check_and_connect() { local container=$1 local network=$2 - if docker ps --format '{{.Names}}' | grep -q "^${container}$"; then + if docker ps -a --format '{{.Names}}' | grep -q "^${container}$"; then if ! docker inspect "${container}" --format '{{json .NetworkSettings.Networks}}' | grep -q "\"${network}\""; then echo "Warning: Container ${container} is not connected to ${network}. Reconnecting and restarting so the entrypoint reapplies traffic shaping..." - docker network connect "${network}" "${container}" + docker network connect "${network}" "${container}" || { + docker stop -t 2 "${container}" >/dev/null 2>&1 || true + docker network connect "${network}" "${container}" + } docker restart "${container}" fi fi