version: '3.8'
services:
mesh-app:
build:
context: .
args:
- USER_ID=${UID:-1000}
- GROUP_ID=${GID:-1000}
# image: docker.jerxie.com/mesh-app
ports:
- "8082:8000"
volumes:
# Mounts the local data directory into the container. This ensures that
# uploads, outputs, and job metadata persist across container restarts.
- ./data:/app/data
# To prevent permission issues when the container writes to the mounted volume,
# this runs the container with the current host user's ID and group ID.
# The default '1000' is used as a fallback if the UID/GID environment
# variables are not explicitly set.
environment:
# Redirects the cache directory to a writable location within the mounted volume.
# This prevents permission errors from tools like ezdxf trying to write to the root home directory.
- XDG_CACHE_HOME=/app/data/.cache