8 подписчиков
В ответ на пост
Стопаем docker stop $(docker ps -aq) 2>/dev/null
Удаляем docker rm $(docker ps -aq) 2>/dev/null
Обновляем
# Остановка и удаление существующих контейнеров
docker stop elixir_1 elixir_2 elixir_3 elixir_4 2>/dev/null
docker rm elixir_1 elixir_2 elixir_3 elixir_4 2>/dev/null
# Обновление образа
docker pull elixirprotocol/validator:v3 --platform linux/amd64
# Запуск новых контейнеров
for dir in validator_*; do
if [[ -d "$dir" ]]; then
env_file="$dir/validator.env"
if [[ -f "$env_file" ]]; then
port=$(echo "$dir" | grep -oP '\d+')
echo "Запуск контейнера с именем elixir_$port на порту 17$port"
docker run --env-file "$env_file" --platform linux/amd64 -p 17$port:17690 --restart unless-stopped -d elixirprotocol/validator:v3
# Добавление задержки между запусками
sleep 5
else
echo "Файл окружения '$env_file' не найден. Пропускаем контейнер."
fi
fi
done
Чтобы посмотреть содержимое всех папок validator.env
find . -type f -name validator.env -exec sh -c 'echo "Contents of: {}"; cat {}; echo "\n"' \;
Около минуты
27 сентября 2024