We recommend to use Docker Swarm to aggregate several web servers along with at least one server for databases.

    At least 2 web nodes must run for efficient results in production.

    Web node spec🔗

    These servers can be virtual machines (VPS) or dedicated servers on bare metal, with recommended specifications:

    • 4 CPU cores, 2Ghz by core
    • 4Gb of RAM
    • 80Gb of storage

    Should host these services:

    • arkindex backend & frontend
    • arkindex internal worker
    • load balancer
    • (optionally) IIIF server

    Database server spec🔗

    This server must be a dedicated server on bare metal, using SSD for database storage, with recommended specifications:

    • 8 to 12 cores, 2.6Ghz by core
    • 32Gb of RAM
    • 500 Gb of storage (heavily depends on the size of your datasets)

    Should host these services:

    • PostgreSQL database
    • Redis server
    • (optionally) Solr server
    • (optionally) Minio instance

    Machine Learning Workers🔗

    Each worker can be an independent server, and is not necessarily connected directly to the platform (it only needs to communicate through the REST API of the platform, no database access is needed).

    The requirement of each server depends on the type of your processes and datasets. We recommend to use bare-metal servers with at least 8 cores at 2Ghz and 16Gb of RAM. You may also need some GPUs for specific use cases. Please describe your datasets with samples so we can reply with specific requirements for any inquiry.