Neo4j + Docker – 无法创buildJVM

我正在尝试为Neo4j DB构build一个Docker容器。 虽然在本地运行数据库不是问题,但容器启动JVM时遇到问题。 通过neo4j查看:3.2.2图像我正在构build我自己的Dockerfile,我无法看到我们使用不同版本的JRE。 这个问题似乎源于neo4j.conf,它在无法识别的VM选项标志上崩溃,例如UseG1GCOmitStackTraceInFastThrow

Dockerfile相当短

 FROM neo4j:3.2.2 ADD ./neo4j.conf /var/lib/neo4j/conf/. ADD ./data/. /var/lib/neo4j/import ADD ./scripts/. . 

我也有一个docker-compose.yml

 version: '2' services: neo4j: image: eu.gcr.io/tine-matsans-v2/neo4j:develop container_name: neo4j build: context: ./neo4j/. ports: - "7474:7474" - "7473:7473" - "7687:7687" environment: - NEO4J_USERNAME=neo4j - NEO4J_PASSWORD=litago 

我在Windows 10机器上,但图像构build一个unix容器。 我的同事在运行容器方面没有问题,使用相同的configuration,尽pipe他使用的是Mac。 这个问题不应该是相关的,因为问题在容器内。

 neo4j | Active database: graph.db neo4j | Directories in use: neo4j | home: /var/lib/neo4j neo4j | config: /var/lib/neo4j/conf neo4j | logs: /var/lib/neo4j/logs neo4j | plugins: /var/lib/neo4j/plugins neo4j | import: /var/lib/neo4j/import neo4j | data: /var/lib/neo4j/data neo4j | certificates: /var/lib/neo4j/certificates neo4j | run: /var/lib/neo4j/run neo4j | Starting Neo4j. neo4j | Unrecognized VM option 'UseG1GC neo4j | Did you mean '(+/-)UseG1GC'? neo4j | Error: Could not create the Java Virtual Machine. neo4j | Error: A fatal exception has occurred. Program will exit. 

有没有人遇到类似的问题? 我已经search了几个堆栈溢出post,并试图了解JVM和容器如何工作,但我找不到任何可靠的信息来帮助我解决这个问题。

我遇到了同样的问题。 原来是neo4j.conf文件中的行结尾。 我使用VS代码将行结束符切换为“LF”,然后运行docker-compose,一切正常。 希望这可以帮助。

Visual Studio代码:如何显示行尾

必须停止docker-machine,转到conf文件,使用notepadd ++转换文件到UTF8,即使它已经是utf8,编辑eof到unix,保存,docker-machine start,docker-compose up yey works