OSX(El Capitan)上で実行されているDockerコンテナ(Docker-Compose経由)でNeo4j 3.1インスタンスをスピンアップしようとしています。ネオの最大ヒープスペースをデフォルトの512MBよりも大きくすることを試みない限り、すべてうまくいっています。DockerのNeo4j - 最大ヒープサイズが原因でハードクラッシュが発生する137
によれば、これは環境変数NEO4J_dbms_memory_heap_maxSize
を追加することによって達成することができ、サーバラッパースクリプトはそれに応じてneo4j.conf
ファイルを更新します。私はチェックして、期待通りに更新されています。
docker-compose up
を実行してコンテナを回転させると、Neo4jインスタンスがステータスコードでクラッシュするという問題があります。ちょっと調べてみると、ヒープサイズの上限に基づいて、これはlinux hard-crashです。
$ docker-compose up
Starting elasticsearch
Recreating neo4j31
Attaching to elasticsearch, neo4j31
neo4j31 | Starting Neo4j.
neo4j31 exited with code 137
私の質問:
- が、これはドッカーまたはOSXの制限によるものですか?
- これらの制限を変更する方法はありますか?リクエストされた制限を1GBに落とすと、それは回転を開始しますが、重いクエリを実行するとクラッシュします(これは、とにかく増加したヒープスペースの必要性を引き起こします)。
- 実行中のクエリは、フルテキスト属性を含む多くのノード(> 150k)の大規模な更新であり、プラグインを使用してElasticSearchと同期させることができます。ネオがサイファーだけを使用して、一度に500のノードを実行する方法がありますか(私はできるかぎりスクリプトを書くことを避けたいですが、少し汚れていると感じています)。次のよう
マイドッキングウィンドウ-compose.ymlは次のとおりです。
---
version: '2'
services:
# ---<SNIP>
neo4j:
image: neo4j:3.1
container_name: neo4j31
volumes:
- ./docker/neo4j/conf:/var/lib/neo4j/conf
- ./docker/neo4j/mnt:/var/lib/neo4j/import
- ./docker/neo4j/plugins:/plugins
- ./docker/neo4j/data:/data
- ./docker/neo4j/logs:/var/lib/neo4j/logs
ports:
- "7474:7474"
- "7687:7687"
environment:
- NEO4J_dbms_memory_heap_maxSize=4G
# ---<SNIP>
ありがとうございます。私は何かが欠けていると確信していました(私はDockerにとってかなり新しいです!)。私はドッカーの作成コマンドで何かを探していましたが、これははるかに意味があります! – n00dle
心配する必要はありません!あなたがちょうど始まったときに小さな事を見落とすことは本当に簡単です!申し訳ありませんが、私はあなたのneo4jsの質問に答えることができませんでした。 –