Skip to content

opencti container fails to start #565

@dariosusman

Description

@dariosusman

I've got problems getting the OpenCTI container to run.
I've reconfigured docker-composer.yml to not fetch/use minio at all and use AWS S3 instead.

However the error that comes up from the container is the following:

2026-03-26T16:45:37.514686423Z {"category":"APP","level":"info","message":"[CHECK] Search engine ok, checking if File storage is alive","source":"backend","timestamp":"2026-03-26T16:45:37.514Z","version":"7.260318.0"}

2026-03-26T16:45:39.565518655Z {"category":"APP","cause":{"code":"UNKNOWN_ERROR","message":"Could not load credentials from any providers","name":"CredentialsProviderError","stack":"CredentialsProviderError: Could not load credentials from any providers\n    at /opt/opencti/build/back.js:819:1887\n    at /opt/opencti/build/back.js:811:93402\n    at process.processTicksAndRejections (node:internal/process/task_queues:103:5)\n    at async provider (/opt/opencti/build/back.js:811:92907)\n    at async /opt/opencti/build/back.js:789:11056\n    at async /opt/opencti/build/back.js:879:103873\n    at async /opt/opencti/build/back.js:801:10979\n    at async initializeBucket (/opt/opencti/build/back.js:1879:125572)\n    at async storageInit (/opt/opencti/build/back.js:1879:125709)\n    at async checkSystemDependencies (/opt/opencti/build/back.js:4255:23636)\n    at async platformStart (/opt/opencti/build/back.js:4288:38458)"},"level":"error","message":"[OPENCTI] System dependencies check failed","source":"backend","timestamp":"2026-03-26T16:45:39.564Z","version":"7.260318.0"}

The .env file contains the followng:

###########################
# DEPENDENCIES            #
###########################

MINIO_ROOT_USER=nothing
MINIO_ROOT_PASSWORD=nothing
RABBITMQ_DEFAULT_USER=opencti
RABBITMQ_DEFAULT_PASS=opencti
SMTP_HOSTNAME=localhost
OPENSEARCH_ADMIN_PASSWORD=opencti
ELASTIC_MEMORY_SIZE=4G

###########################
# COMMON                  #
###########################

XTM_COMPOSER_ID=8215614c-7139-422e-b825-b20fd2a13a23
COMPOSE_PROJECT_NAME=xtm

###########################
# OPENCTI                 #
###########################

OPENCTI_HOST=localhost
OPENCTI_PORT=8080
OPENCTI_EXTERNAL_SCHEME=http
OPENCTI_ADMIN_EMAIL=admin@somedomain.com
OPENCTI_ADMIN_PASSWORD=somepassword
OPENCTI_ADMIN_TOKEN="3b699f8d-1265-4c7c-931f-033fec69e4ee"
OPENCTI_HEALTHCHECK_ACCESS_KEY=Hoa5aengae=t#o8a
OPENCTI_ENCRYPTION_KEY="TSaKkOZRHkdkA9S7cJMfSRtKEk8UBjzUnd7zex6GnFc="

###########################
# OPENCTI CONNECTORS      #
###########################

CONNECTOR_EXPORT_FILE_STIX_ID=dd817c8b-abae-460a-9ebc-97b1551e70e6
CONNECTOR_EXPORT_FILE_CSV_ID=7ba187fb-fde8-4063-92b5-c3da34060dd7
CONNECTOR_EXPORT_FILE_TXT_ID=ca715d9c-bd64-4351-91db-33a8d728a58b
CONNECTOR_IMPORT_FILE_STIX_ID=72327164-0b35-482b-b5d6-a5a3f76b845f
CONNECTOR_IMPORT_DOCUMENT_ID=c3970f8a-ce4b-4497-a381-20b7256f56f0
CONNECTOR_IMPORT_FILE_YARA_ID=7eb45b60-069b-4f7f-83a2-df4d6891d5ec
CONNECTOR_IMPORT_EXTERNAL_REFERENCE_ID=d52dcbc8-fa06-42c7-bbc2-044948c87024
CONNECTOR_ANALYSIS_ID=4dffd77c-ec11-4abe-bca7-fd997f79fa36

###########################
# OPENCTI DEFAULT DATA    #
###########################

CONNECTOR_OPENCTI_ID=dd010812-9027-4726-bf7b-4936979955ae
CONNECTOR_MITRE_ID=8307ea1e-9356-408c-a510-2d7f8b28a0e2

And I've reconfigured docker-compose.yaml like this:

From the dependencies section, I've commented the minio bit out:

#  minio:
#    image: minio/minio:latest
#    volumes:
#      - s3data:/data
#    ports:
#      - "9000:9000"
#    environment:
#      MINIO_ROOT_USER: ${MINIO_ROOT_USER}
#      MINIO_ROOT_PASSWORD: ${MINIO_ROOT_PASSWORD}
#    command: server /data
#    restart: always
#    healthcheck:
#      test: ["CMD", "mc", "ready", "local"]
#      interval: 10s
#      timeout: 5s
#      retries: 3

From the COMMON section I've commented the following out and set the variables like this:

      - MINIO__ENDPOINT=s3.eu-west-1.amazonaws.com
      - MINIO__PORT=443
      - MINIO__USE_SSL=true
      - MINIO__BUCKET_NAME=opencti-bicket
      - MINIO__BUCKET_REGION=eu-west-1
      - MINIO__USE_AWS_ROLE=true
#      - MINIO__ACCESS_KEY=${MINIO_ROOT_USER}
#      - MINIO__SECRET_KEY=${MINIO_ROOT_PASSWORD}

From the depends_on bit, I've commented these lines out:

#      minio:
#        condition: service_healthy

I'm not entirely sure... because I'm unable to back track where in the opencti code is this, but I'm starting to believe the problem is that since my set up on the EC2 instance is to use an IAM instance role and it does access the S3 bucket, the opencti application is unable to figure this out even though MINIO__USE_AWS_ROLE is set to true. Based on the documentation, this should be working, but it isn't and fails with the credentials provider error?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions