Загрузка данных в redis во время docker -композитной сборки - PullRequest
0 голосов
/ 14 января 2020

У меня есть приложение, запущенное docker -compose. В приложении у меня есть экземпляр Redis, настроенный в постоянном режиме. Во время docker-compose build мне нужно загрузить данные в экземпляр Redis. У меня есть lua -скрипт, который создает и вставляет данные в Redis. Но я не понимаю, как запустить redis и загрузить данные, используя мой lua -скрипт во время docker-compose build. Я пытаюсь что-то вроде:

FROM redis:5
...
RUN redis-server /usr/local/etc/redis/redis.conf
RUN dataBuilder.lua
...
CMD ["redis-server", "/usr/local/etc/redis/redis.conf", "--appendonly yes"]

Но docker-compose build остановить после RUN redis-server /usr/local/etc/redis/redis.conf

Как запустить Redis и загрузить в него данные во время docker-compose build?

1 Ответ

0 голосов
/ 14 января 2020

Вам нужно поместить команду ./dataBuilder.lua & redis-server /usr/local/etc/redis/redis.conf в ENTRYPOINT. В основном,

  • Запустите сервер в фоновом режиме
  • Загрузите файл LUA
  • Как только команда LUA вернет код выхода 0, запустите сервер redis в Передний план еще выход.
...