Search code examples
dockerneo4jdocker-swarmdocker-stack

Failing to deploy a neo4j service as a docker stack using Docker Swarm via a docker-compose file


I am trying to configure a docker-compose.yml (I am aware version and services is not stated, they are apart of the file) file to run a neo4j instance. I am using docker swarm and deploying a stack i.e. used the following commands:

docker swarm init

docker stack deploy -c docker-compose.yml neo

note_db:
 image: neo4j:latest
 environment:
   - NEO4J_AUTH=<username>/<password>
   - NEO4J_dbms_mode=CORE
   - NEO4J_ACCEPT_LICENSE_AGREEMENT=yes
   - NEO4J_dbms_connector_http_listen__address=:7474
   - NEO4J_dbms_connector_https_listen__address=:6477
   - NEO4J_dbms_connector_bolt_listen__address=:7687
 ports:
   - "7474:7474"
   - "6477:6477"
   - "7687:7687"
 volumes:
   - type: bind
     source: ~/neo4j/data
     target: /data
   - type: bind
     source: ~/neo4j/logs
     target: /logs
 deploy:
   replicas: 1
   resources:
     limits:
       cpus: "0.1"
       memory: 120M
   restart_policy:
     condition: on-failure

I have omitted the username and password. I am currently only trying to spin up one instance as I am still testing. I have removed NEO4J_AUTH as well as NEO4J_AUTH=none, with the same outcome.

The logs provide the following:

org.neo4j.commandline.admin.CommandFailed: initial password was not set because live Neo4j-users were detected., at org.neo4j.commandline.admin.security.SetInitialPasswordCommand.setPasswor (SetInitialPasswordCommand.java:83)
command failed: initial password was not set because live Neo4j-users were detected.,
Starting Neo4j.,
2018-09-17 16:12:39.396+0000 INFO  ======== Neo4j 3.4.7 ========,
2018-09-17 16:12:41.990+0000 INFO  Starting...,
2018-09-17 16:12:43.792+0000 ERROR Failed to start Neo4j: Starting Neo4j failed: Component 'org.neo4j.server.database.LifecycleManagingDatabase@70b0b186' was successfully initialized, but failed to start. Please see the attached cause exception "/logs/debug.log (Permission denied)".

In the debug.log file, the only things I found is : [o.n.b.s.a.BasicAuthentication] Failed authentication attempt for 'neo4j' (no other failures, errors or warnings).

Clearly, I have some sort of auth issue but I am not sure where the error lies and how to address it. I have attempted NEO4J_AUTH=none and removing the ENV completely, it still does not work.

Someone has posted something along the lines of this issue but they haven't received any responses. I am hoping mine does.


Solution

  • FROM user: logisima

    You don't have any issue with auth, it's a permission issue : cause exception "/logs/debug.log (Permission denied)"