When developing graph-based applications, it can become hard to manage different database server instances. Using the new instance_runner
module, you will learn how to start, stop, connect to and monitor Memgraph instances with GQLAlchemy directly from your Python scripts.
First, perform all the necessary imports:
from gqlalchemy.instance_runner import (
DockerImage,
MemgraphInstanceDocker
)
Start the Memgraph instance
The following code will create a Memgraph instance, start it and return a connection object:
memgraph_instance = MemgraphInstanceDocker(
docker_image=DockerImage.MEMGRAPH, docker_image_tag="latest", host="0.0.0.0", port=7687
)
memgraph = memgraph_instance.start_and_connect(restart=False)
We used the default values for the arguments:
-
docker_image=DockerImage.MEMGRAPH
: This will start thememgraph/memgraph
Docker image. -
docker_image_tag="latest"
: We use thelatest
tag to start the most recent version of Memgraph. -
host="0.0.0.0"
: This is the wildcard address which indicates that the instance should accept connections from all interfaces. -
port=7687
: This is the default port Memgraph listens to. -
restart=False
: If the instance is already running, it won't be stopped and started again.
After we have created the connection, we can start querying the database:
memgraph.execute_and_fetch("RETURN 'Memgraph is running' AS result"))[0]["result"]
Pass configuration flags
You can pass configuration flags using a dictionary:
config={"--log-level": "TRACE"}
memgraph_instance = MemgraphInstanceDocker(config=config)
Stop the Memgraph instance
To stop a Memgraph instance, call the stop()
method:
memgraph_instance.stop()
Check if a Memgraph instance is running
To check if a Memgraph instance is running, call the is_running()
method:
memgraph_instance.is_running()
Where to next?
Hopefully, this guide has taught you how to manage Memgraph Docker instances. If you have any more questions, join our community and ping us on Discord.
Top comments (0)