[英]How to connect mg_client outside container in Docker?
我正在嘗試訪問 docker 容器內的 mg_client,但不幸的是,我無法連接它。 我已按照此處文檔的說明進行操作
docker-compose.yaml
version: "3"
services:
redis:
image: redislabs/redisgraph
container_name: redis
restart: unless-stopped
ports:
- "6379:6379"
memgraph:
image: memgraph
container_name: memgraph
restart: unless-stopped
ports:
- "7687:7687"
CLI 返回錯誤 -
如圖所示,Memgraph 已成功初始化。
奇怪的是,如果我在容器內執行它,我可以連接。
從我的角度來看,可能的錯誤是什么?
PS:我正在嘗試使用同時運行的 Memgraph、Neo4j 和 RedisGraph 創建一個項目,並使用 Python 庫/適配器訪問每個數據存儲。 這是朝着它邁出的第一步。
反饋將不勝感激。
如果使用標准docker run
,我已經成功連接。 Memgraph 運行命令是
docker run --rm -p 7687:7687 --name test memgraph
如果使用docker-compose
,則必須定義網絡:
version: "3"
services:
memgraph:
image: memgraph:1.3.0-community
container_name: memgraph
networks:
- test_network
container_name: memgraph
restart: unless-stopped
ports:
- "7687:7687"
networks:
test_network:
driver: bridge
請注意確切的網絡名稱,因為docker-compose
將{{folder_name}}_{{network_name}}
作為網絡名稱。 就我而言,那是stack_issue_test_network
。 由於docker-compose
3.5,可以定義網絡名稱,但我在Ubuntu 20.04上使用的是1.25。
使用它的好處是不必進行 IP 分辨率。 可以改用容器名稱。
最后的幾點說明:
--log-level=TRACE --also-log-to-stderr
查看更多日志。mg_client
是一個不推薦使用的工具,因為您使用的是 Ubuntu,因此直接從主機安裝mgconsole和查詢 Memgraph 實例應該相對簡單。 未來有計划用 package mgconsole
代替mg_client
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.