A Unix OS
Docker and Docker Compose LTS
There are several million transactions on the Arweave chain. In order to effectively serve content on the gateway you'll need a decent sized computer. The ideal specs for a Gateway should have the following:
16GB RAM (ideally 32GB RAM)
~100GB of SSD storage available
Intel i5 / AMD FX or greater, +4 vCPUs should be more than enough, these are typically Intel Xeon CPUs.
This guide is designed to use Docker Compose. There is also the development version of the guide, that you can review here.
Also make sure to read the Snapshot Guide to expedite the synchronization process for your Gateway.
By default, there is a default environment you can use located at .env.docker in the repository.
ARWEAVE_NODES=["..."]DATABASE_HOST=postgresDATABASE_PORT=5432DATABASE_USER=arweaveDATABASE_PASSWORD=arweaveDATABASE_NAME=arweaveENVIRONMENT=publicPORT=3000PARALLEL=4SNAPSHOT=0INDICES=["App-Name", "app", "domain", "namespace"]Make sure you copy this configuration to .env.
cp .env.docker .envYou can start the server with docker-compose.
# with npm
npm run docker:start
# with yarn
yarn docker:start
# with pure docker-compose
docker-compose up --build -dYou can spin down the docker-compose cluster with.
# with npm
npm run docker:stop
# with yarn
yarn docker:stop
# with pure docker-compose
docker-compose down -vYou can test if the server and the GraphQL queries are working properly by navigating to.
http://localhost:3000/graphqlThis webpage should look similar to.
https://arweave.dev/graphql