Dockerfile 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. FROM ultimaker/cura-build-environment:1
  2. # Environment vars for easy configuration
  3. ENV CURA_BENV_BUILD_TYPE=Release
  4. ENV CURA_BRANCH=docker
  5. ENV URANIUM_BRANCH=3.2
  6. ENV CURA_ENGINE_BRANCH=3.2
  7. ENV MATERIALS_BRANCH=3.2
  8. ENV CURA_APP_DIR=/srv/cura
  9. # Ensure our sources dir exists
  10. RUN mkdir $CURA_APP_DIR
  11. # Setup Uranium
  12. WORKDIR $CURA_APP_DIR
  13. RUN git clone -b $URANIUM_BRANCH --depth 1 https://github.com/Ultimaker/Uranium
  14. WORKDIR $CURA_APP_DIR/Uranium
  15. # Setup Cura
  16. WORKDIR $CURA_APP_DIR
  17. RUN git clone -b $CURA_BRANCH --depth 1 https://github.com/Ultimaker/Cura
  18. WORKDIR $CURA_APP_DIR/Cura
  19. # Setup materials
  20. WORKDIR $CURA_APP_DIR/Cura/resources
  21. RUN git clone -b $MATERIALS_BRANCH --depth 1 https://github.com/Ultimaker/fdm_materials materials
  22. WORKDIR $CURA_APP_DIR/Cura/resources/materials
  23. # Setup CuraEngine
  24. WORKDIR $CURA_APP_DIR
  25. RUN git clone -b $CURA_ENGINE_BRANCH --depth 1 https://github.com/Ultimaker/CuraEngine
  26. WORKDIR $CURA_APP_DIR/CuraEngine
  27. RUN mkdir build
  28. WORKDIR $CURA_APP_DIR/CuraEngine/build
  29. RUN cmake3 ..
  30. RUN make
  31. RUN make install
  32. # TODO: setup libCharon
  33. # Make sure Cura can find CuraEngine
  34. RUN ln -s /usr/local/bin/CuraEngine $CURA_APP_DIR/Cura
  35. # Run Cura
  36. WORKDIR $CURA_APP_DIR/Cura
  37. ENV PYTHONPATH=${PYTHONPATH}:$CURA_APP_DIR/Uranium
  38. RUN chmod +x ./run_in_docker.sh
  39. CMD "./run_in_docker.sh"