Submitting Jobs
This guide covers everything you need to know about running compute jobs on Auralis Cloud.
Project Structure
Your project needs a Dockerfile at the root. Here's a typical structure:
my-project/
├── Dockerfile # Required!
├── main.py # Your entry point
├── requirements.txt # Dependencies
└── src/ # Your codeThe Dockerfile
Your Dockerfile tells us how to build and run your code. Here's a simple example:
FROM python:3.10-slim
# Install dependencies
COPY requirements.txt .
RUN pip install -r requirements.txt
# Copy your code
COPY . /app
WORKDIR /app
# Create output directory
RUN mkdir -p /app/output
# Run your script
CMD ["python", "main.py"]Important: The Output Directory
This is crucial! Auralis collects files from a specific output directory. By default, this is ./output.
Your code should save all results to this directory:
# ✅ Correct - saves to output directory
model.save('./output/model.h5')
results.to_csv('./output/results.csv')
# ❌ Wrong - files won't be collected
model.save('./model.h5')
results.to_csv('./results.csv')You can change the output directory when submitting, just make sure your code writes there.
Submitting a Job
Through the Dashboard
- Go to Dashboard → Submit
- Choose your platform:
- AMD64: Intel/AMD processors (most common)
- ARM64: Apple Silicon, AWS Graviton, Raspberry Pi
- Set max runtime (1-8 hours)
- Upload your project as a
.zipfile - Click Deploy Job
What Happens Next
- Your job enters the PENDING queue
- A provider claims your job → status becomes RUNNING
- When complete → status becomes COMPLETED
- Download your outputs from the Jobs page
Tips for Success
Keep Docker Images Small
Large images = slow builds = higher costs. Use slim base images:
# Good
FROM python:3.10-slim
# Avoid
FROM python:3.10Handle Errors Gracefully
If your code crashes, the job fails and you won't get outputs. Add try/except blocks:
try:
train_model()
save_results('./output/model.h5')
except Exception as e:
# At least save the error log
with open('./output/error.log', 'w') as f:
f.write(str(e))Test Locally First
Before submitting, test your Docker build locally:
cd my-project
docker build -t my-job .
docker run -v $(pwd)/output:/app/output my-jobIf it works locally, it'll work on Auralis.
Monitoring Your Job
Head to Dashboard → Jobs to see all your jobs. Each job shows:
- Status: PENDING, RUNNING, COMPLETED, or FAILED
- Platform: AMD64 or ARM64
- Created: When you submitted it
- Runtime: How long it took
Click the ⋮ menu to download outputs when ready.