Latest streams plugin version errors with Neo4j docker image
f1ames opened this issue · 5 comments
Guidelines
Please note that GitHub issues are only meant for bug reports/feature requests. If you have questions on how to use Streams, please ask on StackOverflow instead of creating an issue here.
Expected Behavior (Mandatory)
It's possible to start Neo4j with streams
plugin via official Docker image.
Actual Behavior (Mandatory)
Starting Neo4j Docker container with streams
plugin fails with 8 code
(see logs below).
How to Reproduce the Problem
Simply try to start Neo4j via docker or docker compose.
Steps (Mandatory)
- Use below
docker-compose.yml
file:
version: "3.9"
services:
neo4j:
image: neo4j:latest
container_name: 'test-neo4j'
ports:
- 7474:7474
- 7687:7687
volumes:
- ./docker_volumes/neo4j/data:/data
- ./docker_volumes/neo4j/logs:/logs
- ./docker_volumes/neo4j/plugins:/plugins
- ./docker_volumes/neo4j/import:/var/lib/neo4j/import
environment:
- NEO4J_AUTH=neo4j/neo4jpass
- NEO4J_apoc_export_file_enabled=true
- NEO4J_apoc_import_file_enabled=true
- NEO4J_apoc_import_file_use__neo4j__config=true
- NEO4J_dbms_security_procedures_unrestricted=apoc.*,algo.*,gds.*
- NEO4J_dbms_security_procedures_allowlist=apoc.*,algo.*,gds.*
- NEO4JLABS_PLUGINS=["graph-data-science", "apoc", "streams"]
- Run it:
docker compose build --no-cache neo4j && docker compose up --force-recreate neo4j
The result is:
[+] Running 1/0
⠿ Container test-neo4j Recreated 0.0s
Attaching to test-neo4j
test-neo4j | Warning: Folder mounted to "/plugins" is not writable from inside container. Changing folder owner to neo4j.
test-neo4j | Warning: Folder mounted to "/logs" is not writable from inside container. Changing folder owner to neo4j.
test-neo4j | Warning: Folder mounted to "/data" is not writable from inside container. Changing folder owner to neo4j.
test-neo4j | Changed password for user 'neo4j'. IMPORTANT: this change will only take effect if performed before the database is started for the first time.
test-neo4j | Fetching versions.json for Plugin 'graph-data-science' from https://graphdatascience.ninja/versions.json
test-neo4j | Installing Plugin 'graph-data-science' from https://graphdatascience.ninja/neo4j-graph-data-science-2.2.0.jar to /plugins/graph-data-science.jar
test-neo4j | Applying default values for plugin graph-data-science to neo4j.conf
test-neo4j | Skipping dbms.security.procedures.unrestricted for plugin graph-data-science because it is already set
test-neo4j | Fetching versions.json for Plugin 'apoc' from https://neo4j-contrib.github.io/neo4j-apoc-procedures/versions.json
test-neo4j | Installing Plugin 'apoc' from https://github.com/neo4j-contrib/neo4j-apoc-procedures/releases/download/4.4.0.9/apoc-4.4.0.9-all.jar to /plugins/apoc.jar
test-neo4j | Applying default values for plugin apoc to neo4j.conf
test-neo4j | Skipping dbms.security.procedures.unrestricted for plugin apoc because it is already set
test-neo4j | Fetching versions.json for Plugin 'streams' from https://neo4j-contrib.github.io/neo4j-streams/versions.json
test-neo4j | Installing Plugin 'streams' from https://github.com/neo4j-contrib/neo4j-streams/releases/download/5.0.0/neo4j-streams-5.0.0.jar to /plugins/streams.jar
test-neo4j exited with code 8
Removing streams
plugin from plugin list solves the issue. Also it worked just fine last week (before 5.0.0 release).
Specifications (Mandatory)
See docker image.
Versions
- OS: Ubuntu 18.04 (via WSL2)
- Neo4j: Latest image which is
4.4.11
now - Neo4j-Streams:
5.0.0
Hi @f1ames ,
where did you download neo4j-streams 5.0.0? The latest streams version is 4.1.2. The latest release (https://github.com/neo4j-contrib/neo4j-streams/releases/tag/5.0.0) is just about the Neo4j Kafka connector which has to be installed as Kafka Connect connector and not as Neo4j plugin.
Regards,
Mauro
Hi @mroiter-larus,
Thank you for clarification on this. Hmm, this is what happens when you run Neo4j Docker image (with the configuration I posted above). I assume it just tries to download and use latest plugin version, as you can see in the logs:
test-neo4j | Fetching versions.json for Plugin 'streams' from https://neo4j-contrib.github.io/neo4j-streams/versions.json
test-neo4j | Installing Plugin 'streams' from https://github.com/neo4j-contrib/neo4j-streams/releases/download/5.0.0/neo4j-streams-5.0.0.jar to /plugins/streams.jar
I'm not sure at this stage if it means it's issue on Neo4j plugin management system side? 🤔
Hi @f1ames,
i tried your docker-compose.yml
and i got the same error. I think there may be a problem related to NEO4JLABS_PLUGINS
environment variable. It is getting the wrong plugin version to install.
I'll talk with the development team and let them know.
Thanks for reporting it!
Hi @f1ames,
could you please retry? It should now work as expected!
Mauro
Hi @mroiter-larus,
Looks like it works now. It uses 4.1.2
version which works fine:
prod-neo4j | Fetching versions.json for Plugin 'streams' from https://neo4j-contrib.github.io/neo4j-streams/versions.json
prod-neo4j | Installing Plugin 'streams' from https://github.com/neo4j-contrib/neo4j-streams/releases/download/4.1.2/neo4j-streams-4.1.2.jar to /plugins/streams.jar
prod-neo4j | Applying default values for plugin streams to neo4j.conf
Thanks for the quick reaction and fix! 👍