# Authoring environment for your labs. Uses the prebuilt Simspace images and # mounts only your ./labs directory — you never need Node or the app source. # # docker compose up dev # live preview at http://localhost:5173 # # (also starts pulse — see below) # docker compose run --rm validate # validate labs + regenerate labs.json # # Pin the image tags to a released version for reproducible authoring, e.g. # export SIMSPACE_AUTHORING_IMAGE=dockersamples/simspace-authoring:1 # export SIMSPACE_PULSE_IMAGE=dockersamples/simspace-pulse:1 name: my-simspace services: # Live preview. Edits to ./labs show on browser refresh. The catalog (labs.json) # is generated on the fly by the app, so there's nothing to build. dev: image: ${SIMSPACE_AUTHORING_IMAGE:-dockersamples/simspace-authoring:docker-next} command: npm run dev ports: - "5173:5173" volumes: - ./labs:/usr/local/app/public/labs # One-shot validator: checks every lab under labs/ and regenerates labs.json. # Run with `docker compose run --rm validate`. validate: image: ${SIMSPACE_AUTHORING_IMAGE:-dockersamples/simspace-authoring:docker-next} profiles: ["tools"] command: npm run validate-lab -- /labs volumes: - ./labs:/labs