Mohammed, ExecuteScript uses the Jython script engine (not pure Python as the name might imply). The major difference is that Jython cannot load natively compiled (CPython, e.g.) modules like numpy, scipy, and I suspect docker. It can only load and use pure Python modules (meaning modules written entirely with Python that don't import native modules).
You may find ExecuteStreamCommand [1] is a legitimate alternative to call out to Python (and thus to the docker module). Regards, Matt P.S. I am looking into JyNI [2] to see if we might be able to add such a capability to NiFi in the future. [1] https://nifi.apache.org/docs/nifi-docs/components/org.apache.nifi.processors.standard.ExecuteStreamCommand/index.html [2] http://jyni.org On Mon, Jan 9, 2017 at 10:41 AM, mohammed shambakey <[email protected]> wrote: > Hi > > I installed "docker" for python and I can write python script that uses > "docker" command. > > I'm trying to use a nifi "executescript" processor with "python" engine, but > each time it tells me it cannot find the "docker" module in the script file, > despite I can execute the script file correctly from command line. > > I wonder if "python" engine in "executescript" processor does not use the > underlying "python" command in my OS? If so, can I connect them together, or > update the "python" engine in "executescript" processor to be able to see > the "docker" module? > > Regards > > -- > Mohammed
