2017-07-20 81 views
1

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

的Dockerfile是相当短的

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

我也有一个码头工人,撰写.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的机器上,但图像生成一个UNIX容器。尽管他使用的是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. 

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

+0

没有,我刚才试过了,没有问题。你的conf文件可能有问题。 – Ayushya

+0

奇怪的是,我和我的同事正在使用相同的conf文件。 – Iltharion

+0

你是否检查EOL和隐藏字符(断行...)?因为我认为“无法识别的虚拟机选项”错误信息通常包含在'''中。而第二个'''缺少 – VladoDemcak

回答

0

不得不停止泊坞窗机,去conf文件,使用notepadd ++将文件转换为UTF8,即使它已经UTF8,编辑EOF到UNIX,保存,码头工人,机器启动,码头工人,撰写up yey works