Contiker: Contiki-NG's Docker image #183
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR brings Docker support for the NG toolchain and development environment (Dockerfile under
tools/docker
). It also uses the Docker image in Travis tests, so that one can exactly reproduce the Travis environment locally. It builds on #165 for cleaner CI tests, and reworks the CI framework further. More consistent scripts across the tests, and more readable test logs.I have tested this on a Linux 64-bit host. The Docker image builds from a 32-bit Ubuntu, as required for Cooja "Contiki motes".
To get started, you can either build the image or download it from Docker Hub. To build it:
To download it:
For convenience, one can use an alias such as (tested only on Linux):
The container uses a bind mount to directly access the Contiki-NG repo form the host. This is what Travis uses (it git clones on the host, then starts a container with direct access to the cloned git). This is also handy as a development environment, as it leaves the Contiki-NG git clone no the host, i.e. accessible by editors installed in the host.
We also provide as an alternative a standalone image, with Contiki-NG and pre-compiled Cooja included. The image is also on Docker Hub, just pull
simonduq/contiki-ng:standalone
.With the alias above, one can then start a bash:
or even just:
Run a particular command:
Or even run Cooja directly, provided one has a X server running on the host, and
DISPLAY
points to it:There is one particular 6top test that does not pass. @yatch , any clue what the problem might be?
https://travis-ci.org/simonduq/contiki-ng/jobs/303194585
To reproduce:
docker pull simonduq/contiki-ng contiker bash -c "make -C tests/16-6tisch 02-cooja-test-sixp-pkt.testlog"
Or
contiker cooja
, open and run the02-cooja-test-sixp-pkt.csc
.