Running as a Docker Container
Slicebox uses sbt native packager to build a docker image based on "openjdk:8-jre-alpine". To build the image from sources run
sbt docker:publishLocal
The slicebox docker image is available on dockerhub. It is based on Alpine Linux and uses openjdk 8.
docker pull slicebox/slicebox:1.4-latest-alpine
The image uses default configuration, which is most likely not what you want (files and DB are stored in filesystem of the container). To use a custom configuration, you should either create your own image based on slicebox or mount your configuration as a volume.
FROM slicebox/slicebox:1.4-latest-alpine
EXPOSE 8080
# custom config
ADD custom-slicebox.conf /opt/docker/conf/slicebox.conf
# custom log config
ADD custom-logback.xml /opt/docker/conf/logback.xml
docker run -p 5000:5000 --volume /absolute/path/to/conf:/opt/docker/conf slicebox/slicebox:1.4-latest-alpine
Mount a data directory if you want to store DICOM or DB data on filesystem of the docker host. Make sure to update your configuration (i.e. dicom-storage.file-system.path) accordingly.
docker run -p 5000:5000 --volume /absolute/path/to/data:/opt/docker/data --volume /absolute/path/to/conf:/opt/docker/conf slicebox/slicebox:1.4-latest-alpine
Slicebox is an open-source project under the Apache 2.0 license. It is an initiative of the NIMSA research group at the Sahlgrenska Academy Hospital in Gothenburg, Sweden.