Невозможно запустить контейнер Apache nifi Docker в Swarm. Пустой ответ - PullRequest
0 голосов
/ 29 октября 2018

Я не могу запустить официальный образ nifi в Docker Swarm. Когда я запускаю контейнер в обычном режиме:

docker run --name nifi -p 8080:8080 -d apache/nifi:latest

все работает нормально, и я могу получить доступ к приложению под http://localhost:8080/nifi

Однако, когда я пытаюсь запустить приложение в Docker Swarm:

docker swarm init
docker stack deploy -c docker-compose.yml nifi

Со следующим docker-compose.yml

version: "3"
services:
  zookeeper:
    hostname: zookeeper
    container_name: zookeeper
    image: 'bitnami/zookeeper:latest'
    environment:
      - ALLOW_ANONYMOUS_LOGIN=yes
  nifi:
    image: apache/nifi:latest
    ports:
      - "8080:8080" 
    expose:
      - "8080"
    environment:
      - NIFI_WEB_HTTP_PORT=8080
      - NIFI_WEB_HTTP_HOST=localhost
      - NIFI_CLUSTER_IS_NODE=true
      - NIFI_CLUSTER_NODE_PROTOCOL_PORT=8082
      - NIFI_ZK_CONNECT_STRING=zookeeper:2181
      - NIFI_ELECTION_MAX_WAIT=1 min

Приложение запускается (zookeeper и nifi), но недоступно при http://localhost:8080/nifi

curl http://localhost:8080
curl: (52) Empty reply from server

Однако работает следующий код:

docker exec -it 629ecd6949d9 curl -v http://localhost:8080

показывает, что nifi запущен и работает, но по какой-то причине он не работает извне контейнера.

Я близок, чтобы начать бить головой о стену. Как я могу это исправить?

Лучший Paweł

1 Ответ

0 голосов
/ 30 октября 2018

Рефакторинг вашего составного файла. Попробуйте использовать это:

version: "3.3"
services:
  zookeeper:
    hostname: zookeeper
    image: 'bitnami/zookeeper:latest'
    environment:
      - ALLOW_ANONYMOUS_LOGIN=yes
  nifi:
    image: apache/nifi:latest
    ports:
      - target: 8080
        published: 8080
        protocol: tcp
        mode: host 
    environment:
      - NIFI_WEB_HTTP_PORT=8080
      - NIFI_WEB_HTTP_HOST=0.0.0.0
      - NIFI_CLUSTER_IS_NODE=true
      - NIFI_CLUSTER_NODE_PROTOCOL_PORT=8082
      - NIFI_ZK_CONNECT_STRING=zookeeper:2181
      - NIFI_ELECTION_MAX_WAIT=1 min
...