Skip to content

dev: Add brainiak-tutorials to Dockerfile#425

Merged
mihaic merged 1 commit into
brainiak:masterfrom
mihaic:docker-tutorials
Jun 18, 2019
Merged

dev: Add brainiak-tutorials to Dockerfile#425
mihaic merged 1 commit into
brainiak:masterfrom
mihaic:docker-tutorials

Conversation

@mihaic

@mihaic mihaic commented Jun 17, 2019

Copy link
Copy Markdown
Member

Move to Ubuntu 18.04 for Python 3.6, required for tutorials.

Move to Ubuntu 18.04 for Python 3.6, required for tutorials.
Comment thread Dockerfile
&& echo "shell -bash" >> ~/.screenrc

EXPOSE 8888
EXPOSE 8899

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Didn't we want to stay with port 8888 because that is what Jupiter prints as the URL when it starts? I remember users getting confused by that.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

This is consistent with the script that we run automatically, so Jupyter will print the right thing:
https://github.com/brainiak/brainiak-tutorials/blob/master/tutorials/run_jupyter_docker.sh#L2

Comment thread Dockerfile
EXPOSE 8899

ENTRYPOINT ["/bin/bash", "-l"]
CMD ["tutorials/run_jupyter_docker.sh"]

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Do we want the tutorials to automatically start? Seems like most of the time the user of brainiak docker will not be using the tutorials.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

I think the tutorials are a great way to start for all users of BrainIAK. At the same time, we should add instructions to the website about starting a shell (hint: add -c bash at the end of the docker run command).

Comment thread Dockerfile
&& tar -xf brainiak-*.tar.gz \
&& for example in brainiak-$BRAINIAK_VERSION/examples/*/requirements.txt; \
&& python3 -m pip install --user -U "pip<10" \
&& python3 -m pip install --user -U . \

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

For clarity I'd prefer to have WORKDIR /mnt and
&& python3 -m pip install --user -U brainiak
&& python3 -m pip install --user -U -r brainiak/tutorials/requirements.txt
&& for example in brainiak/examples/*/requirements.txt; \

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

From the user perspective, I think WORKDIR should be brainiak, so users can easily find the tutorials and examples. As for clarity in the Dockerfile for developers, I think developers are used to working inside the brainiak directory.

@mihaic mihaic merged commit ca9cd32 into brainiak:master Jun 18, 2019
@mihaic mihaic deleted the docker-tutorials branch June 18, 2019 17:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants