This repository collects OpenSCAD related docker files. One is meant for running OpenSCAD in a container (for building models, etc.), while the rest are meant for internal use in the OpenSCAD CI automation.
For general use (running OpenSCAD in a container), please use the openscad/openscad images published and documented at Docker Hub.
docker run \
-it \
--rm \
-v $(pwd):/openscad \
-u $(id -u ${USER}):$(id -g ${USER}) \
openscad/openscad:latest \
openscad -o CSG.3mf CSG.scaddocker run \
-it \
--rm \
--init \
-v $(pwd):/openscad \
-u $(id -u ${USER}):$(id -g ${USER}) \
openscad/openscad:latest \
xvfb-run -a openscad -o CSG.png CSG.scadNote that PNG renderings currently still needs the X display. That limitation can go away soon due to the built-in EGL support. So this needs --init and run via xvfb-run.
For running OpenSCAD with a full graphical interface accessible via web browser, use the Selkies-based image.
cd openscad/trixie-selkies
docker build --build-arg JOBS=$(nproc) -t openscad-selkies:trixie .docker run -d \
--name openscad-gui \
-p 3000:3000 \
-v $(pwd):/openscad \
-v openscad-config:/config \
openscad-selkies:trixieThen open http://localhost:3000 in your web browser to access OpenSCAD.
To stop the container:
docker stop openscad-gui && docker rm openscad-guiopenscad/appimage-*openscad/mxe-*openscad/src-*
All docker images can be viewed with a Docker Hub search for openscad/.
Creating an image with debug symbols depends if the app is compiled with cmake or qmake. To enable debugging set BUILD_TYPE="Debug" and DEBUG="+" in `scripts/build-images.sh
Before
--build-arg BUILD_TYPE="Release" \
--build-arg DEBUG="-" \After
--build-arg BUILD_TYPE="Debug" \
--build-arg DEBUG="+" \Example to run gdb in a container
docker run --ulimit core=-1 -it -v $(pwd):/input openscad/openscad:2021.01-debug
apt update; apt install gdb -y
xvfb-run gdb --ex run --args openscad --info