Docker-контейнер возвращает потерю данных - PullRequest
0 голосов
/ 18 апреля 2019

Каждый раз, когда мой сервер перезагружается, я буду хранить все данные базы данных от MySQL до Redis.Если ключ существует, он будет игнорироваться.Каждое обновление или создание будет GET ключом, а значения всегда массивом со строкой.Я переберу массив, чтобы обновить элемент, и SET верну тот же ключ снова.

После нескольких часов работы Redis в док-контейнере с томом, подключенным к моему каталогу док-станции, но пустым.

У меня возникла проблема, из-за которой Redis резервирует использование ОЗУ как 200 МБ послевремя уменьшается до 60 МБ и встречается с потерей данных .

Docker-Compose

redis_prod:
    image: 'redis'
    container_name: 'redis-cache-prod'
    labels:
      - traefik.enable=false
    networks:
      - traefik_proxy
    volumes:
      - redis-data:/data
    expose:
      - 6379
volumes:
   redis-data:

Как обновить Redis

var redisR = JSON.parse(await redis.get('house'));
var updatedHouses = redisR.filter(e => e.burn === true);
redis.set('house', JSON.stringify(updatedHouses));

Статистика Docker

CONTAINER ID        NAME                          CPU %               MEM USAGE / LIMIT     MEM %               NET I/O             BLOCK I/O           PIDS
657ddd3d44ef        redis-cache-prod              0.18%               188.6MiB / 1.953GiB   9.43%               148MB / 2.94GB      991kB / 4.1kB       4
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...