Как сохранить файлы потока nifi с помощью docker-compose? - PullRequest
0 голосов
/ 24 марта 2019

сейчас я использую nifi и его процессоры для потоковой передачи (прослушиватель mqtt, оценка json, замена текста, запись в db ...). Я пытаюсь сохранить потоковые файлы, и поэтому я сделал некоторое отображение объема (см. Ниже). Но это не работает; после перезапуска контейнера кажется, что потоковые файлы не сохранены ...

Может ли кто-нибудь дать мне подсказку, как решить эту проблему?

nifi:
image: apache/nifi
restart: on-failure
ports:
  - "8000:8000"
networks:
  - traefik
environment:
  - NIFI_WEB_HTTP_PORT=8000
volumes:
  - nifi_conf:/opt/nifi/conf
  - nifi_state:/data/nifi/state
  - nifi_db:/opt/nifi/database_repository
  - nifi_flowfile:/opt/nifi/flowfile_repository
  - nifi_content:/opt/nifi/content_repository
  - nifi_provenance:/opt/nifi/provenance_repository 


volumes:
 nifi_provenance:{}
 nifi_flowfile: {}
 nifi_content: {}
 nifi_db: {}
 nifi_state: {}
 nifi_conf: {}

Спасибо.

Ответы [ 2 ]

4 голосов
/ 25 марта 2019

вы можете отобразить папки-контейнеры Docker непосредственно на хост-машину следующим образом:

services:
  nifi:
    ...
    volumes:
      - ./conf:/opt/conf
      - ./nifi_state:/data/nifi/state
      ...

дополнительное определение объема не требуется

обратите внимание, что в Windows с VirtualBox эта функция работает только в текущем каталоге пользователя.

0 голосов
/ 03 апреля 2019

В качестве альтернативы вы можете использовать только docker-compose stop вместо docker-compose down, что не приведет к удалению вашего контейнера и, следовательно, к тому, что тома будут смонтированы.

Это означает, что вам не нужно сопоставлять тома, и вы можете простоиспользуйте этот базовый файл docker-compose:

version: '2'
services:
  futa-nifi-lsc:
    environment:
      - NIFI_WEB_HTTP_PORT=9000
    image: apache/nifi:1.8.0
    volumes:
      - ./jdbc_driver:/opt/jdbc_driver
      - ./checkin_files:/opt/checkin_files
      - ./truststore:/opt/truststore
    ports:
      - "9000:9000"

Для получения дополнительной информации прочитайте эту статью здесь .

...