Skip to main content

Single Machine / VM

Artemis ships as a set of Docker Compose files orchestrated by a Makefile (works with both docker compose and podman compose).

Loading latest release…

Review the prerequisites before starting.

1. Runtime

Install one of:

If make is missing, install it:

  • Ubuntu/Debian: sudo apt-get install make
  • RHEL/CentOS/Fedora: sudo dnf install make (or sudo yum install make on older versions)

2. Latest artifacts

Loading latest release…

Credentials for the file server and image registry are provided separately by TurinTech.

3. Installation

The flow is the same for online and air-gapped deployments. Steps marked Air-gapped only apply when the host has no internet access; skip them otherwise.

  1. Provision a VM matching the hardware requirements.

  2. Air-gapped only: push every image listed above into your internal registry.

  3. Authenticate with the image registry:

    • Online: docker login
    • Air-gapped: docker login your.internal.registry:port
  4. Download the deployment package and extract it (uses the credentials provided by TurinTech):

    Loading latest release…

    Then move into the extracted folder: cd artemis_.

  5. Air-gapped only: edit .env.custom to point at your internal registry:

    REGISTRY=your.internal.registry:port
    IMAGE_REPOSITORY=<path>/turintech/
    EVOML_IMAGE_REPOSITORY=<path>/turintech/
    SERVICES_REGISTRY=your.internal.registry:port
  6. Deploy Artemis:

    make deploy
  7. Create the admin user:

    make create-users
  8. Open Artemis at http://<machine-ip>:80.

note

Run make info from the deployment folder to view the admin credentials you need to log in.

4. Common Make targets

CommandDescription
makeList all available targets
make infoVM details and admin credentials
make imagesList the images used by the deployment
make deployDeploy all services
make deploy service=<name>Deploy one service
make downStop all containers
make destroyRemove containers and volumes

5. LLM providers

Add the keys for the providers you use to .env.custom. Only configure the blocks for the providers you actually use.

Bedrock

ARTEMIS_BEDROCK_REGION=eu-central-1
ARTEMIS_BEDROCK_API_KEY=<value>
ARTEMIS_BEDROCK_ANTHROPIC_REGION=<value>

Vertex

Option A: private key.

ARTEMIS_VERTEX_PRIVATE_KEY=<value>
ARTEMIS_VERTEX_PROJECT=<value>
ARTEMIS_VERTEX_EMAIL=<value>

Option B: service account file. Drop vertex-key.json into ./keys/ and point the variable at the in-container path.

ARTEMIS_VERTEX_SERVICE_ACCOUNT_PATH=/tmp/files/vertex-key.json

OpenAI / Azure Foundry

ARTEMIS_OPENAI_TYPE selects the provider. It defaults to openai; set it to azure for Azure Foundry.

Official OpenAI

ARTEMIS_OPENAI_KEY=<value>

Azure Foundry (OpenAI models)

ARTEMIS_OPENAI_TYPE=azure
ARTEMIS_OPENAI_URL=<value>
ARTEMIS_OPENAI_KEY=<value>

Azure Foundry (Claude models)

ARTEMIS_AZURE_AI_URL=<value>
ARTEMIS_AZURE_AI_KEY=<value>

Optional connection settings (OpenAI)

ARTEMIS_OPENAI_NO_SSL_VERIFY=true
ARTEMIS_OPENAI_SSL_CERT=/tmp/keys/openai.ca

For OpenAI behind an SSL-inspecting proxy, drop your CA into ./keys/openai.ca and set ARTEMIS_OPENAI_SSL_CERT as shown.

Anthropic

ARTEMIS_ANTHROPIC_KEY=<value>

Cohere

ARTEMIS_COHERE_KEY=<value>

Deepseek

ARTEMIS_DEEPSEEK_KEY=<value>

6. Update

  1. Download the new deployment package and extract it (uses the credentials provided by TurinTech):

    Loading latest release…
  2. Air-gapped: ensure the new images are in your internal registry.

  3. Copy the following from your previous Artemis folder into the new one (artemis_):

    • .env.custom
    • docker-compose.override.yml
    • keys/
  4. Move into the new folder and re-deploy:

    cd artemis_<new-version>
    make deploy
  5. Open Artemis at http://<machine-ip>:80.

note

Run make info from the deployment folder to view the admin credentials you need to log in.

note

Any new environment variables introduced by the release must be added to .env.custom to persist across restarts.