# Docker image for \`nightly-master\`

**URL:** https://discourse.slicer.org/t/docker-image-for-nightly-master/8273
**Category:** Development
**Tags:** extensions-manager, nightlybuild, docker, testing
**Created:** [September 3, 2019, 11:11am UTC](https://discourse.slicer.org/t/docker-image-for-nightly-master/8273 "2019-09-03T11:11:05Z")
**Posts on this page:** 6
**Page:** 1

<div class="post-metadata">

### Author: ![unnmdnwb3](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/unnmdnwb3/32/4527_2.png) [@unnmdnwb3](https://discourse.slicer.org/u/unnmdnwb3)
#### Post date: [September 3, 2019, 11:11am UTC](https://discourse.slicer.org/t/docker-image-for-nightly-master/8273/1 "2019-09-03T11:11:05Z")

</div>

Hello everyone,

We’d like to introduce a new **docker image** `unnmdnwb3/slicer3d-nightly`, which offers an environment to test extensions for _Slicer 4.11.x_ (which supports _Python 3_ ). The image is based on Slicer’s branch `nightly-master` (fixed on commit [82f0c50](https://github.com/Slicer/Slicer/commit/6c6c15c05dbe425500ff55c3b5783f09a09e50cd)) and shares the [base-image](https://github.com/Slicer/SlicerBuildEnvironment/#docker-based-environments) `slicer/buildenv-qt5-centos7` with the official Slicer docker images.

For more information, please consult the following sources:

- **Github** : [https://github.com/unnmdnwb3/slicer3d-nightly](https://github.com/unnmdnwb3/slicer3d-nightly)
- **Dockerhub** : [https://hub.docker.com/r/unnmdnwb3/slicer3d-nightly](https://hub.docker.com/r/unnmdnwb3/slicer3d-nightly)

Detailed information and the `Dockerfile` can be found on the repo itself.

_Please consider leaving feedback (either here or on the repo), so that we can improve and adjust our current solution!_

#### Background

We’re a team from [Opendose](http://opendose.org/) working on an extension for Slicer. Our goal is to provide software that complies to high standards regarding _reliability_ and _correctness_. Thus, _testing_ of our code is a key-stone of our effort. To facilitate contributing and to enhance our software quality, an automated _CI-Pipeline_ has been built, using _Gitlab-CI_ and _Docker_.

Considering the eventual upgrade to _Slicer 5_ and therefore the associated move to _Python 3_, we wanted to develop our extension for _Slicer 4.11.x_, which supports _Python 3_.

As far as we know, the existing [official docker images](https://github.com/thewtex/SlicerDocker) are currently focussed on supporting _Slicer 4.10.x_ and are based on the `master` [branch](https://github.com/Slicer/Slicer), which only supports _Python 2_.

Thus, we created `unnmdnwb3/slicer3d-nightly`.

We hope that we can support other teams with this image in their efforts to facilitate testing and build robust software. If you have any _questions_, I’m more than happy to address them!

---

<div class="post-metadata">

### Author: ![jcfr](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/jcfr/32/17825_2.png) [@jcfr](https://discourse.slicer.org/u/jcfr)
#### Post date: [September 3, 2019, 1:09pm UTC](https://discourse.slicer.org/t/docker-image-for-nightly-master/8273/2 "2019-09-03T13:09:03Z")

</div>

This is outstanding. Thanks for working on this 🙏

> As far as we know, the existing [official docker images](https://github.com/thewtex/SlicerDocker) are currently focussed on supporting _Slicer 4.10.x_ and are based on the `master` [branch](https://github.com/Slicer/Slicer), which only supports _Python 2_ .

To clarify, the `slicer/slicer-base` image is built and published daily. It is based of the “nightly” master branch and it includes python3 and Qt5.

To support extension testing, i suggest we “resurrect” the `slicer/slicer-build` image, this should allow testing of both python and c++ based Slicer extension.

@unnmdnwb3 Is it something you could help with ?

In the mean time, @thewtex could you transfer the `SlicerDocker` project to the Slicer organization ?

---

<div class="post-metadata">

### Author: ![unnmdnwb3](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/unnmdnwb3/32/4527_2.png) [@unnmdnwb3](https://discourse.slicer.org/u/unnmdnwb3)
#### Post date: [September 3, 2019, 2:14pm UTC](https://discourse.slicer.org/t/docker-image-for-nightly-master/8273/3 "2019-09-03T14:14:41Z")

</div>

Hi @jcfr, thank you for your support and the kind words! Really appreciated! 🙂

> [@jcfr](#):
>
> To clarify, the `slicer/slicer-base` image is built and published daily. It is based of the “nightly” master branch and it includes python3 and Qt5.

Ah sorry, seems like I messed something up. I’ve tried to get the _python_ version from `slicer/slicer-build` but always got this back:

```bash
/usr/src/Slicer-build/python-install/bin/SlicerPython -c 'import sys; print(sys.version)'
> 2.7.13 (default, Jan 29 2018, 03:09:51) 

```

Do you know how I can find the `python3` executable on this image?  
We could then definitely pick the best parts from both images and merge them!

> [@jcfr](#):
>
> @unnmdnwb3 Is it something you could help with ?

Yes sure. Is there anything specific, with which I can assist you? Or do you mean the whole process?

---

<div class="post-metadata">

### Author: ![unnmdnwb3](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/unnmdnwb3/32/4527_2.png) [@unnmdnwb3](https://discourse.slicer.org/u/unnmdnwb3)
#### Post date: [September 3, 2019, 2:15pm UTC](https://discourse.slicer.org/t/docker-image-for-nightly-master/8273/4 "2019-09-03T14:15:23Z")

</div>

By the way, we’ve also built a _CI-Pipeline_ based on `gitlab-ci`, using the `unnmdnwb3/slicer3d-nightly` image. Are you interested in having a template for the _CI-CD_ integrated into `SlicerWizard?`  
This would probably only take a small effort.

If you’re interested, I’d propose to integrate a small template for `gitlab-ci`, `circle-ci` and `travis`?

---

<div class="post-metadata">

### Author: ![lassoan](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/lassoan/32/13_2.png) [@lassoan](https://discourse.slicer.org/u/lassoan)
#### Post date: [September 4, 2019, 2:55pm UTC](https://discourse.slicer.org/t/docker-image-for-nightly-master/8273/5 "2019-09-04T14:55:13Z")

</div>

> [@unnmdnwb3](#):
>
> If you’re interested, I’d propose to integrate a small template for `gitlab-ci` , `circle-ci` and `travis` ?

Yes, we would be definitely interested. Please send a pull request with your proposed changes to the [Slicer/Slicer github repository](https://github.com/Slicer/Slicer). Extension templates are defined [here](https://github.com/Slicer/Slicer/tree/master/Utilities/Templates/Extensions).

---

<div class="post-metadata">

### Author: ![thewtex](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/thewtex/32/32_2.png) [@thewtex](https://discourse.slicer.org/u/thewtex)
#### Post date: [September 23, 2019, 8:32pm UTC](https://discourse.slicer.org/t/docker-image-for-nightly-master/8273/6 "2019-09-23T20:32:08Z")

</div>

> [@jcfr](#):
>
> In the mean time, @thewtex could you transfer the `SlicerDocker` project to the Slicer organization ?

Done! 🙂

[GitHub - Slicer/SlicerDocker: Build, package, test, and run 3D Slicer and Slicer Extensions in Docker.](https://github.com/Slicer/SlicerDocker)
