Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Iox #15 add docker environment #16

Merged

Conversation

Mr-Slippery
Copy link
Contributor

This adds a Docker environment for building and running iceoryx applications as described in #15.

It suggests a usage pattern based on docker exec and one based on screen, depending on preference and configuration.

Further details are on the description of related issue #15 and inside the added documentation files.

Thanks for your kind feedback!


WORKDIR /iceoryx

RUN ./tools/iceoryx_build_test.sh \
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In your original version (https://github.com/Mr-Slippery/iceoryx-dockerfiles/blob/master/Dockerfile) you were cloning iceoryx before executing this script. How is the script coming in the docker container?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi @mossmaurice, indeed, initially I was cloning, but for this "integrated version", I thought it makes sense to build and include into the container the current source that is cloned. This makes it into the container via ADD . / in the Dockerfile.

Copy link
Contributor Author

@Mr-Slippery Mr-Slippery Dec 6, 2019

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

But now that you mention it, there is perhaps an issue here, maybe some unintended things make it inside as well, I'll check and fix this. In my case the source was in an otherwise empty dir.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Updated now, indeed, there was an issue, I was going to the parent of top-level iceoryx and adding everything into Docker /. Now I just go to iceoryx and add its content into Docker /iceoryx. Rebased branch, melded changes into existing commit. Thanks for the catch!

Receiving: 81
```

## Using `screen` to launch RouDi and examples
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great chapter!

@@ -0,0 +1 @@
shell "/bin/bash"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm quite fond of fish. Could we use it here?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't see any problem, could install fish as extra package just like screen. I'll give it a try.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Changed the screen shell to fish now (rebased/melded changes).

Welcome to fish, the friendly interactive shell
root@252a62dfbf2e /iceoryx# ./build/iceoryx_examples/icedelivery/ice_sender
Sending: 0
Sending: 1
Sending: 2
Sending: 3

Create a Docker image with a built iceoryx library,
RouDi daemon, and example applications.

Also provide a way to launch Docker containers in which
the RouDi daemon and example applications can be run.

Main work is done in the Dockerfile and the build_and_run.sh script.

The .screenrc file is just configuring screen to use bash as its shell.
This is convenient in case screen is used to run the daemon and examples.

The README.md documents the feature and suggested usage patterns.

Issues: iox-eclipse-iceoryx#15
Signed-off-by: Cornel Izbasa <badc0ded@gmail.com>
Issues: iox-eclipse-iceoryx#15
Signed-off-by: Cornel Izbasa <badc0ded@gmail.com>
@@ -0,0 +1,34 @@
# Copyright (c) 2019 by Cornel Izbasa. All rights reserved.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I guess this is you @Mr-Slippery? I need to confirm that we have the approval from the Author to use this codesnippet.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi @dkroenke, yes, it's just my Github username. :) The Eclipse account linked to this Github username has my real name, Cornel Izbasa. Thanks!

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are you maybe located in Berlin? I found a LinkedIn Profile which says that you are in Tempelhof.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I work at HELLA in Tempelhof, but live in North-East of Berlin :)

Copy link
Member

@dkroenke dkroenke left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Very good, as an improvement i want to write a docker-compose file. But i won't see that as part of this Pull-Request.

@Mr-Slippery
Copy link
Contributor Author

@dkroenke absolutely agree with the docker-compose follow-up, for starters I just didn't want to ask too much of the user, except to have Docker installed and then be able to build and run the apps. And if the image is published on Docker Hub then it will be even easier.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants