Docker Example

This page shows a reproducible Docker setup for running an AugeLab Studio .pmod scenario headlessly.

The image is built locally from a Dockerfile. Customers do not need the AugeLab Studio source code. The container installs the closed-source studio package from the AugeLab package index during image build.

Prerequisites

  • Docker Desktop or Docker Engine with Docker Compose.

  • Access to the AugeLab package index.

  • An AugeLab verification code.

  • A .pmod scenario that can run headlessly.

  • For GPU/CUDA: NVIDIA Container Toolkit installed on the host.

Quick path

  1. Create the folder layout below.

  2. Put your .pmod file in app/.

  3. Add your verification code to .env.

  4. Use the CPU or GPU Dockerfile.

  5. Run docker compose up --build.

  6. Check output_on_host.

Project layout

Replace your_scenario.pmod with your own scenario file.

Environment file

Create .env next to docker-compose.yml:

chevron-right.envhashtag

Do not commit .env if it contains a real verification code.

Scenario runner

Create app/run_scenario.py:

chevron-rightapp/run_scenario.pyhashtag

If your scenario writes files, configure the scenario to write them under /app/app_output.

CPU Dockerfile

Use this for regular headless CPU runs.

chevron-rightapp/Dockerfilehashtag

GPU/CUDA Dockerfile

Use this when your scenario needs CUDA acceleration. The host must have compatible NVIDIA drivers and NVIDIA Container Toolkit.

chevron-rightapp/Dockerfile.cudahashtag

Compose file

Use this for the CPU Dockerfile:

chevron-rightdocker-compose.ymlhashtag

This mounts ./output_on_host from your project folder into the container as /app/app_output.

circle-exclamation

GPU/CUDA compose file

Use this for Dockerfile.cuda:

chevron-rightdocker-compose.cuda.ymlhashtag

Build and run

CPU:

GPU/CUDA:

You should see AugeLab Studio logs and the scenario result in the terminal.

Verify output

Check output_on_host on your host machine. Files written by the scenario to /app/app_output should appear there.

Troubleshooting

Problem
Check

studio install fails

Confirm network access and AugeLab package index access.

License/activation fails

Confirm AUGELAB_VERIFICATION_CODE is set and the container has internet access.

Scenario file not found

Confirm SCENARIO_PATH matches the .pmod copied by the Dockerfile.

Output folder empty

Confirm the .pmod writes to /app/app_output.

Windows volume does not mount

Use forward slashes and confirm Docker Desktop can access the drive.

GPU container cannot see GPU

Install NVIDIA Container Toolkit and test with docker run --rm --gpus all nvidia/cuda:12.8.0-base-ubuntu22.04 nvidia-smi.

Last updated