forked from rosmed/docker-ubuntu-22.04-ros2-novnc
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathDockerfile.slicer
92 lines (83 loc) · 3.06 KB
/
Dockerfile.slicer
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
# Built with arch: amd64 flavor: lxde image: ubuntu:22.04
#
################################################################################
# base system
################################################################################
#FROM ubuntu:20.04 as system
#FROM ros:foxy-ros-base as system
#FROM ros:galactic-ros-base as system
FROM rosmed/docker-ubuntu-22.04-ros2:ismr2024 as system
################################################################################
# Libraries for ISMR 2021 Tutorial
################################################################################
WORKDIR /root
#
# Build 3D Slicer
#
RUN mkdir /root/slicer \
&& cd /root/slicer \
&& git clone --branch v5.6.2 https://github.com/slicer/Slicer \
&& mkdir Slicer-SuperBuild-Release \
&& cd Slicer-SuperBuild-Release \
&& cmake -DCMAKE_BUILD_TYPE:STRING=Release -DSlicer_USE_SYSTEM_OpenSSL=ON ../Slicer \
&& make -j4
#
# Slicer Package
#
RUN cd /root/slicer/Slicer-SuperBuild-Release/Slicer-build \
&& make package \
&& mkdir -p /root/slicer/packages \
&& mv *.tar.gz /root/slicer/packages
#
# SlicerOpenIGTLink
#
RUN mkdir -p /root/slicer/modules \
&& cd /root/slicer/modules \
&& git clone https://github.com/openigtlink/SlicerOpenIGTLink \
&& mkdir SlicerOpenIGTLink-build \
&& cd SlicerOpenIGTLink-build \
&& cmake -DCMAKE_BUILD_TYPE:STRING=Release -DSlicer_DIR:PATH=/root/slicer/Slicer-SuperBuild-Release/Slicer-build ../SlicerOpenIGTLink \
&& make -j4 \
&& cd inner-build \
&& make package \
&& mv *.tar.gz /root/slicer/packages
#
# SlicerIGSIO
#
RUN mkdir -p /root/slicer/modules \
&& cd /root/slicer/modules \
&& git clone https://github.com/IGSIO/SlicerIGSIO\
&& mkdir SlicerIGSIO-build \
&& cd SlicerIGSIO-build \
&& cmake -DCMAKE_BUILD_TYPE:STRING=Release -DSlicer_DIR:PATH=/root/slicer/Slicer-SuperBuild-Release/Slicer-build ../SlicerIGSIO \
&& make -j4 \
&& cd inner-build \
&& make package \
&& mkdir -p /root/slicer/packages \
&& mv *.tar.gz /root/slicer/packages
#
# SlicerIGT
#
RUN mkdir -p /root/slicer/modules \
&& cd /root/slicer/modules \
&& git clone https://github.com/SlicerIGT/SlicerIGT\
&& mkdir SlicerIGT-build \
&& cd SlicerIGT-build \
&& cmake -DCMAKE_BUILD_TYPE:STRING=Release -DSlicer_DIR:PATH=/root/slicer/Slicer-SuperBuild-Release/Slicer-build -DSlicerIGSIO_DIR:PATH=/root/slicer/modules/SlicerIGSIO-build/inner-build ../SlicerIGT \
&& make -j4 \
&& make package \
&& mkdir -p /root/slicer/packages \
&& mv *.tar.gz /root/slicer/packages
#
# Parallel Processing
#
RUN mkdir -p /root/slicer/modules \
&& cd /root/slicer/modules \
&& git clone https://github.com/pieper/SlicerParallelProcessing \
&& mkdir SlicerParallelProcessing-build \
&& cd SlicerParallelProcessing-build \
&& cmake -DCMAKE_BUILD_TYPE:STRING=Release -DSlicer_DIR:PATH=/root/slicer/Slicer-SuperBuild-Release/Slicer-build ../SlicerParallelProcessing \
&& make -j4 \
&& make package \
&& mkdir -p /root/slicer/packages \
&& mv *.tar.gz /root/slicer/packages