Sign inSign up

agturley/nifi

By agturley

•Updated 5 months ago

NiFi built on RHEL 8 with OpenJDK11 or OpenJDK8

Image
0

100K+

agturley/nifi repository overview

Apache Nifi built on RHEL 8 with OpenJDK11 or OpenJDK8 that can also be used for Openshift deployments.

These images have an extended set of environmental variables to allow LDAPS authentication/authorization and clustering. This is using the same method as the official image.

List of docker-compose environment variables and volumes

  - NIFI_JVM_HEAP_INIT=1g

  - NIFI_JVM_HEAP_MAX=1g

  - NIFI_WEB_HTTPS_PORT=8443

  - NIFI_CLUSTER_IS_NODE=true

  - NIFI_CLUSTER_NODE_PROTOCOL_PORT=1055

  - NIFI_CLUSTER_PROTOCOL_IS_SECURE=true

  - NIFI_ZK_CONNECT_STRING=zookeeper1:2181,zookeeper2:2181,zookeeper3:2181

  - NIFI_ELECTION_MAX_WAIT=2 min

  - NIFI_ELECTION_MAX_CANDIDATES=3

  - NIFI_WEB_HTTPS_HOST=nifidev01-nifi

  - NIFI_WEB_PROXY_HOST=nifidev01-nifi1:8443,nifidev02-nifi1:8443,nifidev03-nifi1:8443,nifidev01.test.local:8443,nifidev02.test.local:8443,nifidev03.test.local:8443

  - INITIAL_ADMIN_IDENTITY=testUser

  - NODE_IDENTITY=CN=servername-nifi1, OU=NIFI

  - KEYSTORE_PATH=/opt/nifi/nifi-current/certs/keystore.jks

  - KEYSTORE_TYPE=jks

  - KEYSTORE_PASSWORD=testpassword

  - TRUSTSTORE_PATH=/opt/nifi/nifi-current/certs/truststore.jks

  - TRUSTSTORE_TYPE=jks

  - TRUSTSTORE_PASSWORD=testpassword

  - AUTH=ldap

  - LDAP_AUTHENTICATION_STRATEGY=LDAPS

  - LDAP_MANAGER_DN=CN=svc_nifi,CN=Users,DC=test,DC=local

  - LDAP_MANAGER_PASSWORD=somepassword

  - LDAP_USER_SEARCH_BASE=OU=Sample-Users,DC=test,DC=local

  - LDAP_USER_SEARCH_FILTER=(sAMAccountName={0})

  - LDAP_IDENTITY_STRATEGY=USE_USERNAME

  - LDAP_URL=ldaps://dc01.test.local:636

  - LDAP_TLS_KEYSTORE=/opt/nifi/nifi-current/certs/adsldapts.jks

  - LDAP_TLS_KEYSTORE_PASSWORD=somepassword

  - LDAP_TLS_KEYSTORE_TYPE=jks

  - LDAP_TLS_TRUSTSTORE=/opt/nifi/nifi-current/certs/adsldapts.jks

  - LDAP_TLS_TRUSTSTORE_PASSWORD=somepassword

  - LDAP_TLS_TRUSTSTORE_TYPE=jks

  - LDAP_TLS_PROTOCOL=TLS

  - LDAP_SYNC_INTERVAL=30 mins

  - LDAP_SYNC_USER_SEARCH_BASE=OU=Sample-Users,DC=test,DC=local

  - LDAP_SYNC_USER_SEARCH_FILTER=(objectClass=person)

  - LDAP_SYNC_USER_IDENTITY_ATTRIBUTE=sAMAccountName

  - LDAP_GROUP_SEARCH_BASE=CN=Users,DC=test,DC=local

  - LDAP_GROUP_SEARCH_SCOPE=ONE_LEVEL

  - LDAP_GROUP_SEARCH_FILTER=(description=Sync)

  - LDAP_GROUP_NAME_ATTRIBUTE=sAMAccountName

  - LDAP_GROUP_MEMBER_ATTRIBUTE=member

  - LDAP_GROUP_MEMBER_REF_USER_ATTRIBUTE=distinguishedName

  - NIFI_SECURITY_IDENTITY_MAPPING_PATTERN_DN=

  - NIFI_SECURITY_IDENTITY_MAPPING_VALUE_DN=

volumes:

  - /opt/cooltest/nifi/certs:/opt/nifi/nifi-current/certs

  - /opt/cooltest/nifi/config/node_identity_list.xml:/opt/nifi/nifi-current/node_identity_list.xml

  - /opt/cooltest/nifi/config/user_identity_list.xml:/opt/nifi/nifi-current/user_identity_list.xml

  - /opt/cooltest/nifi/conf:/opt/nifi/nifi-current/conf

  - /opt/cooltest/nifi/logs:/opt/nifi/nifi-current/logs

  - /data/nifi/content_repository:/opt/nifi/nifi-current/content_repository

  - /data/nifi/database_repository:/opt/nifi/nifi-current/database_repository

  - /data/nifi/flowfile_repository:/opt/nifi/nifi-current/flowfile_repository

  - /data/nifi/provenance_repository:/opt/nifi/nifi-current/provenance_repository

when redirecting the entire conf directory, the container will place a clean set of the nifi configuration files into the empty redirected folder. it will only place a clean set of files if the folder is completely empty.

These two files must be provided in order to allow the container to customize the authorizers.xml when creating a secured cluster.

node_identity_list.xml: CN=nifidev01-nifi, OU=NIFI CN=nifidev02-nifi, OU=NIFI CN=nifidev03-nifi, OU=NIFI

user_identity_list.xml:

        <property name="Initial User Identity 0">testuser</property>

CN=nifidev01-nifi, OU=NIFI CN=nifidev02-nifi, OU=NIFI CN=nifidev03-nifi, OU=NIFI

Image Details:

latest (RHEL 8 with OpenJDK8u242)

1.11.0-jdk8u242 (RHEL8 With OpenJDK8 update 242)

1.11.0-jdk11.0.6.10 (RHEL8 With OpenJDK11 11.0.6.10)

1.10.0 (RHEL 8 with OpenJDK 11.0.5)

rhel8-1.9.2 (RHEL8 with OpenJDK8u212)

rhel7-1.9.2 (RHEL7 with OpenJDK8u222)

1.9.2 (RHEL7 with OpenJDK8u201)

1.9.1 (RHEL7 with OpenJDK8u201)

1.9.0 (RHEL7 with OpenJDK8u201)

1.8.0-a (RHEL7 with OpenJDK8u201)

1.8.0 (RHEL7 with OpenJDK8u191)

For NiFi on CentOS 7 https://hub.docker.com/r/agturley/centos-nifi⁠

basic usage: docker run --name nifi -p 8080:8080 -d agturley/nifi:latest

Tag summary

Content type

Image

Digest

sha256:171a900cc…

Size

1018.2 MB

Last updated

5 months ago

docker pull agturley/nifi:2.10.0-SNAPSHOT