Mounting Files into Docker Containers
Volume mounts cannot be changed on a running container. If your Dataedo containers are already running, follow the steps below to update docker-compose.yml and then recreate the containers — your data and configuration will be preserved.
Some configurations require access to local files — for example, private keys, certificates, or license files. When running Dataedo in Docker, these files must be mounted into the container using Docker volumes so the relevant services can access them.
Setup
1. Prepare your files
Create a new directory (e.g., files) next to your docker-compose.yml and copy the files you want to mount into it.
2. Update Docker Compose
Add a volume mount to the service that needs access to the files in your docker-compose.yml. The example below mounts files to the agent service:
services:
agent:
image: dataedo/web_agent:stable
restart: always
platform: linux/amd64
networks:
- overlay
env_file:
- ./.env
volumes:
- ./files:/files:ro # Mount local files as read-only
This maps the local ./files directory to /files inside the container. The :ro flag mounts it as read-only for security.
3. Restart containers
Apply the changes by restarting your containers:
Run the following commands in your terminal:
docker compose down # Stop and remove existing containers
docker compose up -d # Recreate containers with the new volume mounts
4. Use the container path in Dataedo
When configuring a data source connection in Dataedo Portal, enter the container path (not the host path) when asked for a file location. For example, if you mounted ./files:/files, a file placed in ./files/my_key.p8 on the host is available at /files/my_key.p8 inside the container.
Example: Snowflake Key Pair Authentication
Snowflake supports Key Pair Authentication using a private key file. To use this with Dataedo running in Docker:
-
Generate your key pair following the Snowflake documentation.
-
Place the private key file (e.g.,
rsa_key.p8) in the./filesdirectory next to yourdocker-compose.yml. -
Add the volume mount to the agent service and restart containers (see Setup above).
-
In Dataedo Portal, navigate to Connections → Add new connection → Snowflake and select Key pair authentication as the authentication method.
-
In the Private key file path field, enter the container path:
/files/rsa_key.p8 -
Provide the passphrase if your key is encrypted, then complete the connection setup.
Ensure that the mounted files are readable by the container process. If you encounter permission errors, check the file permissions on the host. Consult your security team or follow your organization's security policies when setting permissions on sensitive files such as private keys.
See also
- Custom SSL Certificates — mounting certificates to the backend service (e.g., for Entra ID / Azure AD integration)
- Running Dataedo Portal with Docker Compose — initial Docker deployment setup
Need help?
If you run into any problems or have questions, reach out to Dataedo support.