Requirements/Dependencies

System Requirements

Arches works on Linux, Windows, or macOS. Most production implementations use Linux servers.

To begin development or make a test installation of Arches, you will need the following minimum resources:

Disk Space
  • 2GB for all dependencies and Arches.

  • 8GB to store uploaded files, database backups, etc.

  • Depending on how many uploaded files (images, 3d models, etc) you will have, you may need much more disk space. We advise an early evaulation of how much space you think you’ll need, and then provision twice as much just to be safe…

Memory (RAM)
  • 4GB

  • This recommendation is based on the fact that ElasticSearch requires 2GB to run, and as per official ElasticSearch documentation no more than half of your system’s memory should be dedicated to ElasticSearch.

  • In production, you may want to increase your memory, and allow ElasticSearch to use up to 32GB.

Software Dependencies

Full dependency installation on Ubuntu 18.04, note extra CouchDB instructions:

wget https://raw.githubusercontent.com/archesproject/arches/stable/5.1.x/arches/install/ubuntu_setup.sh>`_
source ./ubuntu_setup.sh

To familiarize yourself with the components and learn some important details, please read the notes below. Where necessary, OS-specific installation notes are included as well.

Python 3.7
PostgreSQL 12 with PostGIS 3
  • macOS Use Postgres.app.

  • Windows Use the EnterpriseDB installers, and use Stack Builder (included) to get PostGIS. After installation, add the following to your system’s PATH environment variable: C:\Program Files\PostgreSQL\12\bin. Make sure you write down the password that you assign to the postgres user.

Elasticsearch 7.4
GDAL >= 2.2.x
  • Windows Use the OSGeo4W installer, and choose to install the GDAL package (you don’t need QGIS or GRASS). After installation, add C:\OSGeo4W64\bin to your system’s PATH environment variable.

Yarn

If you plan to use the Arches Collector Mobile app, you must install CouchDB.

CouchDB 2.x

To support long-running task management, like large user downloads, you must install a Celery broker like RabbitMQ or Redis:

Brokers