Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 8 additions & 5 deletions docker-compose.yml
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
version: '3'
version: "3.9"

services:
caldera:
build:
context: .
dockerfile: Dockerfile
args:
TZ: "UTC" # Timezone to use in container
VARIANT: "full"
VARIANT: "full" # full install: plugins, agents, docs, etc.
image: caldera:latest
command: --log DEBUG
ports:
- "8888:8888"
- "8443:8443"
Expand All @@ -19,5 +19,8 @@ services:
- "8022:8022"
- "2222:2222"
volumes:
- ./:/usr/src/app
command: --log DEBUG
# keeps operation data & uploaded files between runs
- caldera-data:/usr/src/app/data
Copy link
Contributor

@uruwhy uruwhy Aug 27, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is there a reason why we're only storing the data directory for Caldera and not all files like before? When testing this locally, I had an issue because my conf/local.yml file was not persisting between docker compose runs, causing issues with loading existing data.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If I change the line to - caldera-data:/usr/src/app, I no longer get the decryption issue due to config file changes

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Basically what was happening is that unless you use the --insecure flag on Caldera startup, Caldera will look for the conf/local.yml config file and generate a new one if one doesn't exist. Since the config file contains the encryption settings for securing Caldera user data, restarting Caldera with a different config file will typically cause decryption issues since the encryption settings will be mismatched. So unless the config files are also included in the persistent volumes, users won't be able to recover previous data even though the data files technically still exist (just encrypted)


volumes:
caldera-data: