Docker
Visit the Docker homepage for detailed information about using Docker.
Graph.Build Docker images can be found on Docker Hub and the Amazon ECR Public Gallery.
Open a terminal, and execute the following command to create a folder to store all data and configuration.
mkdir ~/graphbuildCreate a file, in your new directory, called
.env, and write the following content, replacing fields where necessary.
N.B. Contact your Graph.Build representative for license keys.
TRANSFORMER_LICENSE={provided-by-Graph.Build}
GRAPHBUILD_DIRECTORY={the-directory-created-in-the-previous-step}
STUDIO_LICENSE={provided-by-Graph.Build}Create another file, in the same directory, called
docker-compose.ymland insert the following.
services:
ui-react:
image: public.ecr.aws/graph.build/studio-ui:latest
ports:
- "9600:80"
environment:
REACT_APP_NODEAPP_HOST: http://localhost:9601
ui-node:
image: public.ecr.aws/graph.build/studio-node:latest
ports:
- "9601:9601"
environment:
NODE_ENV: production
DATABASE_CLIENT: better-sqlite3
STUDIO_LICENSE: ${STUDIO_LICENSE}
volumes:
- ${GRAPHBUILD_DIRECTORY}/sqlite-db:/app/dist/database/sqlite
sql-transformer:
image: public.ecr.aws/graph.build/sql-transformer:latest
ports:
- "9602:8080"
environment:
TRANSFORMER_RUN_STANDALONE: false
TRANSFORMER_LICENSE: ${TRANSFORMER_LICENSE}
TRANSFORMER_DIRECTORY: file:///var/work/sql-transformer/
PG_GRAPH: neptune-gremlin
PROPERTY_GRAPH_MODE: true
KAFKA_BROKERS: broker:9092
volumes:
- ${GRAPHBUILD_DIRECTORY}:/var/work
semi-structured-transformer:
image: public.ecr.aws/graph.build/semi-structured-transformer:latest
ports:
- "9603:8080"
environment:
TRANSFORMER_RUN_STANDALONE: false
TRANSFORMER_LICENSE: ${TRANSFORMER_LICENSE}
TRANSFORMER_DIRECTORY: file:///var/work/semi-structured-transformer/
KAFKA_BROKERS: broker:9092
volumes:
- ${GRAPHBUILD_DIRECTORY}:/var/work
graph_writer:
image: public.ecr.aws/graph.build/graph-writer:latest
ports:
- "9610:8080"
environment:
DELETE_SOURCE: true
TRANSFORMER_RUN_STANDALONE: false
GRAPH_DATABASE_ENDPOINT: http://host.docker.internal:12110/datastores/default/sparql
GRAPH_DATABASE_TYPE: rdfox
TRANSFORMER_LICENSE: ${TRANSFORMER_LICENSE}
KAFKA_BROKERS: broker:9092
volumes:
- ${GRAPHBUILD_DIRECTORY}:/var/work
zookeeper:
image: confluentinc/cp-zookeeper:7.3.2
container_name: zookeeper
environment:
ZOOKEEPER_CLIENT_PORT: 2181
ZOOKEEPER_TICK_TIME: 2000
broker:
image: confluentinc/cp-kafka:7.3.2
container_name: broker
ports:
- "9092:9092"
depends_on:
- zookeeper
environment:
KAFKA_BROKER_ID: 1
KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: PLAINTEXT:PLAINTEXT
KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://broker:9092
KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1
KAFKA_TRANSACTION_STATE_LOG_MIN_ISR: 1
KAFKA_TRANSACTION_STATE_LOG_REPLICATION_FACTOR: 1
volumes:
sqlite-db:
The Compose file above launches an instance of GraphBuild Studio along with its Node.js backend API. It also starts one container each for the SQL Transformer, Semi-Structured Transformer, and Graph Writer.
Kafka and Zookeeper are included for integration, enabling automatic ingestion: when a transformation is executed, the resulting graph data files are automatically picked up by the Graph Writer and written to the graph database of your choice. In this instance it is RDFox. Please see the Graph Writer Configuration page to connect to a different database
The contents of your new directory should be as follows:
~/graphbuild/.env
~/graphbuild/docker-compose.yml From the same directory, execute the following command
docker compose upNavigate to http://localhost:9600 to see the login page:

Login to the Studio using the default values for the Super Admin user:
Username: admin
Password: passwordSee "Configure Users" to change default credentials and administer multiple users.
Last updated

