Я пытаюсь улучшить взаимодействие с Docker в моем проекте, я использую pv
, чтобы показать прогресс загрузки данных в Postgres, он работает, и это довольно приятно.Проблема в том, что после загрузки данных необходимо построить индексы, и это занимает много времени.В течение этого времени индикатор выполнения находится на 100%, и, похоже, ничего не происходит.Я бы хотел, чтобы он как-то оживил, чтобы показать, что что-то происходит.
Вот пример того, к чему я стремлюсь:
что мне нравится me это как мне сделать это в трубе?Я думаю, я мог бы создать сценарий и передать через него, использовать pv
и каким-то образом определить, когда IO файла завершил, а затем переключить вывод на анимацию после 100%.
Это текущая команда:
pv tmp/latest.sql | psql -q -h db -U $POSTGRES_USER $POSTGRES_DB > /dev/null
Я планирую в ближайшее время перенести его в сценарий точки входа, так что не зацикливайтесь на том, что он «один вкладыш».В любом случае, я подумал, что просто попрошу всех вас, супер умных людей, посмотреть здесь, что произойдет.
О, это проект, для которого он: https://github.com/heycarsten/lcbo-api
Спасибо за вашу помощь, все!
ОБНОВЛЕНИЕ
Я не настроен на какой-то "причудливый" индикатор прогресса, попробуйте сфокусироваться на нем.Моя цель - получить данные в базе данных dev из дампа на S3 (или где-либо еще).И для того, чтобы опыт был четко доведен до сведения разработчика, что в случае с этим проектом многие люди впервые научатся программировать.
Просто потому, что в прошлом я всегда делал это таким образомЗагрузка приложения, создание схем, загрузка данных не означает, что это единственный вариант, я знаю об этом и абсолютно открыт для других вариантов.
Если вы думаете, что я 'Я в неведении или что-то еще, ты прав!Я новичок во всем, что касается Docker, но пока мне это очень нравится.
Мои цели:
- Исходные данные периодически обновляются
- В связи с характером проекта существует большой объем данных, и важно, чтобы все эти данные были доступны
- В приложении Rails также будет задача повторно заполнить базу данных.
Если есть чистый способ Docker сделать это, я весь слух, но я не понимаю, как данные могут переходить из изображения в том?