- Docker Compose
- En caso de querer utilizar git como repositorio para versionar los flujos:
- Git CLI
- Git version Control (Github, Gitlab...)
- Apache NiFi → latest
- Apache Zookeeper → latest
- PostgreSQL → latest
- Apache NiFi Registry → latest
- pgAdmin → latest
- Fichero .env donde se recogen variables utilizadas en el fichero docker-compose.yml.
- Fichero docker-compose.yml para definir el entorno.
- Script start.py para desplegar entorno (linux or windows wsl2). Se hace uso de un CLI general para docker compose en el que se puede implementar lógica antes de iniciar los contenedores. Por ejemplo, si la variable REGISTRY_DB_URL que hace referencia a la base de datos para guardar las transacciones de nifi-registry no es postgresql, no se inicia dicho servicio.
- El directorio volumes/nifi-registry que comparte con el contenedor registry los drivers de PostgreSQL (necesarios en caso de configurar postgres en vez de h2 en el fichero .env).
- El directorio donde se clona el repositorio en el que se almacenan las versiones de los flujos (en caso de elegir git en vez de file en el fichero .env). Dicho directorio está incluido en .gitignore y se creará de forma local clonando el repositorio donde queramos almacenar los flujos.
USER@HOSTNAME:~/projects/nifi-pre-pro-registry$ ./start.py -h
usage: start.py [-h] [-s services [services ...]] environment
Services: ['pgadmin', 'nifi-pro', 'nifi-pre', 'postgresql', 'zookeeper-pre', 'zookeeper-pro', 'registry']
positional arguments:
environment section environment to use
optional arguments:
-h, --help show this help message and exit
-s services [services ...]
services (i.e. service1 service2 ...)