Safe infrastructure diagram
- Tx Service is the core of the Safe. It indexes multisig transactions, module transactions, token transfers, collects signatures... There must be 1 Tx Service per Chain, with different workers, PostgreSQL, Redis and RabbitMQ.
- Config Service holds configuration for every Chain (blockexplorer, tx service url, apps enabled, wallets enabled...). 1 instance of the Config Service supports multiple Chains
- Client Gateway provides an API optimized for clients (web ui, android, ios...). 1 instance of the Client Gateway supports multiple Chains
- Events Service handles Safe indexing events from Transaction Service and deliver as HTTP webhooks.
- Create a VM in GCP (inside our instance group in
arianee-nodes
project) - Find the SSH key in dashlane to pull this repo and paste it in the script
- Connect to the VM using this command
and copy/paste the script in the terminal, wait a few minutes
gcloud compute ssh --zone "<VM_REGION>" "<VM_NAME>" --project "<GCP_PROJECT_NAME" -- -L 8000:localhost:8000
- Services should be up and running inside the VM, if you are connected to the VM using the previous command, you can check that everything is fine by browsing to http://localhost:8000/cfg/admin
This repository contains the minimum viable local setup for our backend services.
The setup presented here, assumes that only L2 safes will be used. Last stable version will be used for every service, but you can adjust them on .env
, e.g.:
CFG_VERSION=v2.60.0
CGW_VERSION=v0.4.1
TXS_VERSION=v4.6.1
UI_VERSION=v1.2.0
EVENTS_VERSION=v0.5.0
You can change them to the version you are interested available in docker-hub but be aware that not all versions of our services are compatible with each other, so do so at your own risk.